Function at 0x5a6020
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x50]
cmp eax, dword [ecx + 8]
jbe 0x5a7165
sub esp, 0xd0
mov eax, dword [esp + 0xd4]
mov ecx, dword [eax + 0x84]
mov dword [esp + 0x5c], ecx
mov edx, dword [eax + 0x88]
mov dword [esp + 0x58], edx
mov ebx, dword [eax + 0x8c]
mov dword [esp + 0x54], ebx
mov dword [esp], eax
call fcn.0059f3b0
mov eax, dword [esp + 0xd4]
cmp dword [eax + 0x64], 1
jge 0x5a609e
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a63cb
mov eax, dword [esp + 0xd4]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x54]
mov ebx, dword [eax + 0x60]
cmp ecx, ebx
jbe 0x5a715d
movzx edx, byte [edx + ebx]
cmp dl, 0x2b
jne 0x5a60bf
mov ecx, 1
jmp 0x5a60cd
cmp dl, 0x2d
jne 0x5a621e
mov ecx, 0xffffffff
mov dword [esp + 0x3c], ecx
mov dword [esp], eax
call fcn.0059f3b0
mov eax, dword [esp + 0xd4]
cmp dword [eax + 0x64], 1
jge 0x5a610a
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a620f
mov eax, dword [esp + 0xd4]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x54]
mov ebx, dword [eax + 0x60]
cmp ecx, ebx
jbe 0x5a7156
movzx edx, byte [edx + ebx]
cmp dl, 0x30
jb 0x5a6202
cmp dl, 0x39
ja 0x5a61fe
cmp dl, 0x30
je 0x5a615c
mov byte [esp + 0x23], dl
nop
mov dword [esp], eax
call fcn.0059f3b0
movzx eax, byte [esp + 0x23]
movzx eax, al
add eax, 0xffffffd0
mov ecx, eax
mov eax, dword [esp + 0xd4]
jmp 0x5a6204
nop
mov dword [eax], 3
mov dword [eax + 0x24], 0x1d
mov ecx, dword [0x7c78f0]
test ecx, ecx
jne 0x5a617f
lea ecx, [0x615e48]
mov dword [eax + 0x20], ecx
jmp 0x5a6191
lea edi, [eax + 0x20]
mov ecx, eax
lea eax, [0x615e48]
call fcn.00463730
mov eax, ecx
mov ecx, dword [esp + 0x5c]
mov dword [eax + 0x28], ecx
mov ecx, dword [esp + 0x58]
mov dword [eax + 0x2c], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 0x30], ecx
mov dword [eax + 8], 0x29
mov ecx, dword [0x7c78f0]
test ecx, ecx
jne 0x5a61c2
lea ecx, [0x619fd1]
mov dword [eax + 4], ecx
jmp 0x5a61d4
lea edi, [eax + 4]
mov ecx, eax
lea eax, [0x619fd1]
call fcn.00463730
mov eax, ecx
mov ecx, dword [eax + 0x88]
mov edx, dword [eax + 0x8c]
mov ebx, dword [eax + 0x84]
mov dword [eax + 0x14], ebx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], edx
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
xor ecx, ecx
jmp 0x5a6204
xor ecx, ecx
mov edx, ecx
mov ecx, dword [esp + 0x3c]
jmp 0x5a6384
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
cmp dl, 0x30
jb 0x5a6380
cmp dl, 0x39
ja 0x5a637a
cmp dl, 0x30
je 0x5a62d8
mov byte [esp + 0x23], dl
nop
mov dword [esp], eax
call fcn.0059f3b0
mov eax, dword [esp + 0xd4]
cmp dword [eax + 0x64], 1
jge 0x5a6273
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a62c9
mov eax, dword [esp + 0xd4]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x54]
mov ebx, dword [eax + 0x60]
cmp ecx, ebx
jbe 0x5a714f
movzx edx, byte [edx + ebx]
cmp dl, 0x2b
jne 0x5a6294
mov ecx, 1
jmp 0x5a629e
cmp dl, 0x2d
jne 0x5a62b7
mov ecx, 0xffffffff
mov dword [esp + 0x3c], ecx
mov dword [esp], eax
call fcn.0059f3b0
mov eax, dword [esp + 0xd4]
mov ecx, dword [esp + 0x3c]
jmp 0x5a62b9
xor ecx, ecx
movzx edx, byte [esp + 0x23]
movzx edx, dl
add edx, 0xffffffd0
jmp 0x5a6384
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
nop
mov dword [eax], 3
mov dword [eax + 0x24], 0x1d
mov ecx, dword [0x7c78f0]
test ecx, ecx
jne 0x5a62fb
lea ecx, [0x615e48]
mov dword [eax + 0x20], ecx
jmp 0x5a630d
lea edi, [eax + 0x20]
mov ecx, eax
lea eax, [0x615e48]
call fcn.00463730
mov eax, ecx
mov ecx, dword [esp + 0x5c]
mov dword [eax + 0x28], ecx
mov ecx, dword [esp + 0x58]
mov dword [eax + 0x2c], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 0x30], ecx
mov dword [eax + 8], 0x29
mov ecx, dword [0x7c78f0]
test ecx, ecx
jne 0x5a633e
lea ecx, [0x619fd1]
mov dword [eax + 4], ecx
jmp 0x5a6350
lea edi, [eax + 4]
mov ecx, eax
lea eax, [0x619fd1]
call fcn.00463730
mov eax, ecx
mov ecx, dword [eax + 0x88]
mov edx, dword [eax + 0x8c]
mov ebx, dword [eax + 0x84]
mov dword [eax + 0x14], ebx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], edx
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
xor edx, edx
xor ecx, ecx
jmp 0x5a6384
xor edx, edx
xor ecx, ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], edx
cmp dword [eax + 0x64], 1
jge 0x5a63e2
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a63bc
mov eax, dword [esp + 0xd4]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
jmp 0x5a63e2
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
mov ebx, dword [eax + 0x58]
mov ebp, dword [eax + 0x54]
mov esi, dword [eax + 0x60]
cmp ebx, esi
jbe 0x5a7146
movzx ebx, byte [ebp + esi]
cmp bl, 0x20
je 0x5a6402
cmp bl, 9
jne 0x5a6448
mov dword [esp], eax
call fcn.0059f3b0
mov eax, dword [esp + 0xd4]
cmp dword [eax + 0x64], 1
jge 0x5a63da
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a6439
mov eax, dword [esp + 0xd4]
jmp 0x5a63da
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
cmp bl, 0x23
jne 0x5a65b5
mov dword [esp], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x58]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0xc], ebx
call fcn.005aa650
movzx eax, byte [esp + 0x10]
test al, al
je 0x5a6483
mov edx, dword [esp + 0xd4]
jmp 0x5a6494
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov edx, eax
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5a7141
movzx ebp, byte [ebx + eax]
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
je 0x5a65ab
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
je 0x5a65ab
xchg ebp, eax
cmp al, 0xc2
xchg ebp, eax
jne 0x5a64de
lea esi, [eax + 1]
cmp ecx, esi
jbe 0x5a713a
lea esi, [ebx + eax + 1]
cmp byte [esi], 0x85
je 0x5a65ab
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
jne 0x5a654c
lea esi, [eax + 1]
cmp ecx, esi
jbe 0x5a7133
mov edi, edx
lea edx, [ebx + eax + 1]
movzx edx, byte [edx]
cmp dl, 0x80
jne 0x5a6522
mov byte [esp + 0x22], dl
lea edx, [eax + 2]
cmp ecx, edx
jbe 0x5a712c
lea edx, [ebx + eax + 2]
cmp byte [edx], 0xa8
je 0x5a6592
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
movzx edx, byte [esp + 0x22]
jmp 0x5a6527
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
jne 0x5a654e
cmp ecx, esi
jbe 0x5a7125
cmp dl, 0x80
jne 0x5a654e
lea edx, [eax + 2]
cmp ecx, edx
jbe 0x5a711e
lea edx, [ebx + eax + 2]
cmp byte [edx], 0xa9
jne 0x5a654e
jmp 0x5a6596
mov edi, edx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5a65a9
mov dword [esp], edi
call fcn.0059f3b0
mov eax, dword [esp + 0xd4]
cmp dword [eax + 0x64], 1
jge 0x5a6492
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a659a
mov eax, dword [esp + 0xd4]
jmp 0x5a6492
mov edx, edi
jmp 0x5a65ab
mov edx, edi
jmp 0x5a65ab
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov edx, edi
mov eax, edx
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
mov ebx, dword [eax + 0x58]
mov ebp, dword [eax + 0x54]
mov esi, dword [eax + 0x60]
cmp ebx, esi
jbe 0x5a7115
mov edi, edx
movzx edx, byte [ebp + esi]
cmp dl, 0xd
je 0x5a66c3
cmp dl, 0xa
jne 0x5a65e3
cmp dl, 0xd
jmp 0x5a66c3
mov byte [esp + 0x23], dl
cmp dl, 0xc2
jne 0x5a6612
lea edx, [esi + 1]
cmp ebx, edx
jbe 0x5a710c
lea edx, [ebp + esi + 1]
cmp byte [edx], 0x85
jne 0x5a660d
movzx edx, byte [esp + 0x23]
cmp dl, 0xd
jmp 0x5a66c3
movzx edx, byte [esp + 0x23]
cmp dl, 0xe2
jne 0x5a66b8
lea edx, [esi + 1]
cmp ebx, edx
jbe 0x5a7103
mov dword [esp + 0x50], edx
lea edx, [ebp + esi + 1]
movzx edx, byte [edx]
mov byte [esp + 0x21], dl
cmp dl, 0x80
jne 0x5a6662
lea edx, [esi + 2]
cmp ebx, edx
jbe 0x5a70fa
lea edx, [ebp + esi + 2]
cmp byte [edx], 0xa8
jne 0x5a6658
movzx edx, byte [esp + 0x23]
cmp dl, 0xd
jmp 0x5a66c3
movzx edx, byte [esp + 0x23]
cmp dl, 0xe2
jmp 0x5a6676
mov dword [esp + 0x74], ebp
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
mov edx, ebp
mov ebp, dword [esp + 0x74]
jne 0x5a66b8
mov edx, dword [esp + 0x50]
cmp ebx, edx
jbe 0x5a70f1
movzx edx, byte [esp + 0x21]
cmp dl, 0x80
jne 0x5a66b3
lea edx, [esi + 2]
cmp ebx, edx
jbe 0x5a70e8
lea edx, [ebp + esi + 2]
cmp byte [edx], 0xa9
jne 0x5a66ac
movzx edx, byte [esp + 0x23]
cmp dl, 0xd
jmp 0x5a66c3
movzx edx, byte [esp + 0x23]
jmp 0x5a66b8
movzx edx, byte [esp + 0x23]
test dl, dl
jne 0x5a68eb
cmp dl, 0xd
je 0x5a677c
cmp dl, 0xa
je 0x5a677c
cmp dl, 0xc2
jne 0x5a66f8
lea edi, [esi + 1]
cmp ebx, edi
jbe 0x5a70df
lea edi, [ebp + esi + 1]
cmp byte [edi], 0x85
jne 0x5a66f4
mov edi, dword [esp + 0x38]
jmp 0x5a677c
mov edi, dword [esp + 0x38]
cmp dl, 0xe2
jne 0x5a67da
lea edi, [esi + 1]
cmp ebx, edi
jbe 0x5a70d6
mov dword [esp + 0x50], edi
lea edi, [ebp + esi + 1]
movzx edi, byte [edi]
xchg edi, eax
cmp al, 0x80
xchg edi, eax
jne 0x5a6748
xchg edi, eax
mov byte [esp + 0x22], al
xchg edi, eax
lea edi, [esi + 2]
cmp ebx, edi
jbe 0x5a70cd
lea edi, [ebp + esi + 2]
cmp byte [edi], 0xa8
jne 0x5a673e
mov edi, dword [esp + 0x38]
jmp 0x5a677c
cmp dl, 0xe2
movzx edi, byte [esp + 0x22]
jmp 0x5a674b
cmp dl, 0xe2
jne 0x5a67d6
mov edx, dword [esp + 0x50]
cmp ebx, edx
jbe 0x5a70c4
xchg edi, eax
cmp al, 0x80
xchg edi, eax
jne 0x5a67d0
lea edx, [esi + 2]
cmp ebx, edx
jbe 0x5a70bb
lea edx, [ebp + esi + 2]
cmp byte [edx], 0xa9
jne 0x5a67ca
mov edi, dword [esp + 0x38]
cmp dword [eax + 0x64], 2
jge 0x5a67a2
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a67bb
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
call fcn.0059f470
mov eax, dword [esp + 0xd4]
mov ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0x38]
jmp 0x5a67da
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov edi, dword [esp + 0x38]
jmp 0x5a67da
mov edi, dword [esp + 0x38]
jmp 0x5a67da
mov edi, dword [esp + 0x38]
mov edx, dword [eax + 0x88]
mov ebx, dword [eax + 0x8c]
mov ebp, dword [eax + 0x84]
mov dword [esp + 0x60], ebp
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x34], 0
test edi, edi
jle 0x5a681a
mov edx, dword [eax + 0xfc]
test edx, edx
jl 0x5a6816
add edx, edi
mov dword [esp + 0x34], edx
jmp 0x5a681a
mov dword [esp + 0x34], edi
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp], eax
lea ecx, [esp + 0x34]
mov dword [esp + 4], ecx
lea edx, [esp + 0x7c]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0x58]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0x54]
mov dword [esp + 0x14], esi
lea edi, [esp + 0x60]
mov dword [esp + 0x18], edi
call fcn.005a7170
movzx eax, byte [esp + 0x1c]
test al, al
je 0x5a68dc
mov edx, dword [esp + 0xd4]
cmp dword [edx + 0x64], 1
jge 0x5a68a6
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a68cd
mov edx, dword [esp + 0xd4]
movzx ebx, byte [esp + 0xdc]
xor eax, eax
xor ecx, ecx
xor ebp, ebp
xor esi, esi
xor edi, edi
xor eax, eax
mov dword [esp + 0x6c], eax
xor ebp, ebp
mov dword [esp + 0x24], ebp
xor eax, eax
xor ebp, ebp
jmp 0x5a69b9
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
nop
mov dword [eax], 3
mov dword [eax + 0x24], 0x1d
mov ecx, dword [0x7c78f0]
test ecx, ecx
jne 0x5a690e
lea ecx, [0x615e48]
mov dword [eax + 0x20], ecx
jmp 0x5a6920
lea edi, [eax + 0x20]
mov ecx, eax
lea eax, [0x615e48]
call fcn.00463730
mov eax, ecx
mov ecx, dword [esp + 0x5c]
mov dword [eax + 0x28], ecx
mov ecx, dword [esp + 0x58]
mov dword [eax + 0x2c], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 0x30], ecx
mov dword [eax + 8], 0x2b
mov ecx, dword [0x7c78f0]
test ecx, ecx
jne 0x5a6951
lea ecx, [0x61a5ab]
mov dword [eax + 4], ecx
jmp 0x5a6963
lea edi, [eax + 4]
mov ecx, eax
lea eax, [0x61a5ab]
call fcn.00463730
mov eax, ecx
mov ecx, dword [eax + 0x88]
mov edx, dword [eax + 0x8c]
mov ebx, dword [eax + 0x84]
mov dword [eax + 0x14], ebx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], edx
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
movzx ebx, byte [esp + 0xdc]
mov edx, dword [esp + 0xd4]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x6c]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x30]
mov ebp, dword [esp + 0x70]
movzx eax, byte [esp + 0x20]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x70], ebp
mov ebp, dword [edx + 0x8c]
cmp dword [esp + 0x34], ebp
jne 0x5a6cc7
mov ebp, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov edx, dword [edx + 0x60]
cmp ebp, edx
jbe 0x5a70b2
movzx edx, byte [ebx + edx]
test dl, dl
je 0x5a6cbf
cmp dl, 0x20
jne 0x5a69fa
mov edx, 1
jmp 0x5a6a00
cmp dl, 9
sete dl
mov dword [esp + 0x30], esi
movzx ebx, byte [esp + 0xdc]
test bl, bl
je 0x5a6a19
mov eax, dword [esp + 0x70]
jmp 0x5a6ab9
test al, al
je 0x5a6a26
mov eax, dword [esp + 0x70]
jmp 0x5a6ab9
test dl, dl
je 0x5a6a33
mov eax, dword [esp + 0x70]
jmp 0x5a6ab9
test ecx, ecx
je 0x5a6ab5
mov eax, dword [esp + 0x70]
cmp byte [eax], 0xa
jne 0x5a6ab9
mov ecx, dword [esp + 0x80]
test ecx, ecx
jne 0x5a6aa8
mov ecx, dword [esp + 0x24]
inc ecx
cmp edi, ecx
jb 0x5a6a5a
mov edx, dword [esp + 0x6c]
jmp 0x5a6a9e
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
movzx ebx, byte [esp + 0xdc]
mov esi, dword [esp + 0x30]
mov edx, eax
mov eax, dword [esp + 0x70]
mov byte [ecx + edx - 1], 0x20
jmp 0x5a6b3c
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x6c]
jmp 0x5a6b3c
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x24]
lea ebp, [edx + ecx]
cmp edi, ebp
jae 0x5a6b02
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ebp
mov ebx, dword [esp + 0x6c]
add edx, ebx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00464050
mov eax, dword [esp + 0x70]
movzx ebx, byte [esp + 0xdc]
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x6c]
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x80]
add ecx, ebp
cmp edi, ecx
jb 0x5a6b4d
mov ebp, ecx
jmp 0x5a6b7f
mov dword [esp + 0x4c], ecx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], ebp
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x28], edi
mov eax, dword [esp + 0x80]
sub ebp, eax
mov ebx, dword [esp + 0x7c]
add ebp, edx
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call fcn.00464050
mov dword [esp + 0x80], 0
mov eax, dword [esp + 0xd4]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x54]
mov ebx, dword [eax + 0x60]
cmp ebx, ecx
jae 0x5a70ab
movzx edx, byte [edx + ebx]
cmp dl, 0x20
jne 0x5a6bdd
mov edx, 1
jmp 0x5a6be3
cmp dl, 9
sete dl
mov byte [esp + 0x20], dl
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
jmp 0x5a6ed8
mov ebx, dword [esp + 0x6c]
jmp 0x5a6c08
mov ebx, dword [esp + 0x6c]
jmp 0x5a6c08
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0x24], ecx
cmp dword [eax + 0x64], 2
jge 0x5a6c36
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a7066
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov ecx, dword [esp + 0x30]
mov dword [esp + 0xc], ecx
call fcn.0059f8b0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2c], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x30], edx
mov ebx, dword [esp + 0xd4]
mov dword [esp], ebx
lea ebp, [esp + 0x34]
mov dword [esp + 4], ebp
lea esi, [esp + 0x7c]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x5c]
mov dword [esp + 0xc], edi
mov esi, dword [esp + 0x58]
mov dword [esp + 0x10], esi
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x14], ebp
lea ebp, [esp + 0x60]
mov dword [esp + 0x18], ebp
call fcn.005a7170
movzx eax, byte [esp + 0x1c]
test al, al
jne 0x5a698d
jmp 0x5a7057
movzx ebx, byte [esp + 0xdc]
mov eax, dword [esp + 0x3c]
cmp eax, 0xffffffff
je 0x5a6d5a
mov edx, dword [esp + 0x24]
lea ebp, [edx + ecx]
cmp edi, ebp
jb 0x5a6ce5
mov esi, dword [esp + 0x6c]
jmp 0x5a6d1d
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov esi, eax
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ebp
mov dword [esp + 0x6c], esi
lea eax, [esi + edx]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00464050
mov eax, dword [esp + 0x3c]
movzx ebx, byte [esp + 0xdc]
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x24]
jmp 0x5a6d62
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x24]
cmp eax, 1
jne 0x5a6ded
mov eax, dword [esp + 0x80]
add edx, eax
cmp edi, edx
jb 0x5a6d7c
mov eax, edx
jmp 0x5a6dae
mov dword [esp + 0x48], edx
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], eax
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], edx
mov dword [esp + 0x6c], ecx
mov ebx, dword [esp + 0x80]
sub eax, ebx
mov ebp, dword [esp + 0x7c]
add eax, ecx
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00464050
movzx ebx, byte [esp + 0xdc]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x6c], ecx
lea esi, [0x6628b8]
mov eax, edi
lea edi, [esp + 0x88]
call fcn.00463dbc
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0x60]
mov ebp, dword [esp + 0x64]
mov esi, ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], ebp
mov dword [esp + 0xa0], ebx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], eax
mov edi, dword [esp + 0xd8]
test byte [edi], al
mov eax, dword [0x7c78f0]
test eax, eax
jne 0x5a6e85
mov eax, esi
lea esi, [esp + 0x88]
call fcn.00463dbc
jmp 0x5a6eaa
lea eax, [0x5fe3c0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x88]
mov dword [esp + 8], eax
call fcn.00410860
movzx eax, byte [esp + 0xdc]
test al, al
jne 0x5a6eb9
mov eax, dword [esp + 0xd8]
mov byte [eax + 0x44], 0x20
mov byte [esp + 0xe0], 1
add esp, 0xd0
ret
mov edi, edx
mov ebx, eax
mov eax, dword [esp + 0xd4]
movzx edx, byte [esp + 0x20]
mov ebp, dword [eax + 0x58]
mov esi, dword [eax + 0x54]
mov edx, dword [eax + 0x60]
cmp edx, ebp
jae 0x5a70a2
mov dword [esp + 0x28], edi
mov dword [esp + 0x6c], ebx
movzx edi, byte [esi + edx]
xchg edi, eax
cmp al, 0xd
xchg edi, eax
je 0x5a6c08
xchg edi, eax
cmp al, 0xa
xchg edi, eax
je 0x5a6c08
xchg edi, eax
cmp al, 0xc2
xchg edi, eax
jne 0x5a6f2e
lea ebx, [edx + 1]
cmp ebp, ebx
jbe 0x5a7099
lea ebx, [edx + esi + 1]
cmp byte [ebx], 0x85
je 0x5a6bf8
mov ebx, dword [esp + 0x6c]
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
jne 0x5a6fcc
lea ebx, [edx + 1]
cmp ebp, ebx
jbe 0x5a7090
mov dword [esp + 0x50], ebx
lea ebx, [edx + esi + 1]
movzx ebx, byte [ebx]
cmp bl, 0x80
jne 0x5a6f7c
mov byte [esp + 0x22], bl
lea ebx, [edx + 2]
cmp ebp, ebx
jbe 0x5a7087
lea ebx, [edx + esi + 2]
cmp byte [ebx], 0xa8
je 0x5a6bfe
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
movzx ebx, byte [esp + 0x22]
jmp 0x5a6f81
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
jne 0x5a6fc8
xchg edi, eax
mov byte [esp + 0x23], al
xchg edi, eax
mov edi, dword [esp + 0x50]
cmp ebp, edi
jbe 0x5a707e
cmp bl, 0x80
jne 0x5a6fbd
lea ebx, [edx + 2]
cmp ebp, ebx
jbe 0x5a7075
lea edx, [edx + esi + 2]
cmp byte [edx], 0xa9
je 0x5a6c04
mov ebx, dword [esp + 0x6c]
movzx edi, byte [esp + 0x23]
jmp 0x5a6fcc
mov ebx, dword [esp + 0x6c]
movzx edi, byte [esp + 0x23]
jmp 0x5a6fcc
mov ebx, dword [esp + 0x6c]
xchg edi, eax
test al, al
xchg edi, eax
je 0x5a6c08
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0xc], ecx
call fcn.0059f650
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xd4]
cmp dword [ebx + 0x64], 1
jge 0x5a6ec8
mov dword [esp + 0x44], edx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x78], eax
mov dword [esp], ebx
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a7048
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0xd4]
jmp 0x5a6ec8
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov byte [esp + 0xe0], 0
add esp, 0xd0
ret
mov eax, ebx
mov ecx, ebp
call fcn.004637b0
mov eax, edi
mov ecx, ebp
call fcn.004637b0
mov eax, ebx
mov ecx, ebp
call fcn.004637b0
mov eax, ebx
mov ecx, ebp
call fcn.004637b0
mov eax, ebx
mov ecx, ebp
call fcn.004637b0
mov eax, edx
mov ecx, ebp
call fcn.004637b0
mov eax, ebx
call fcn.004637b0
mov eax, edx
mov ecx, ebp
call fcn.004637b0
mov eax, edx
mov ecx, ebx
call fcn.004637b0
mov eax, edx
mov ecx, ebx
call fcn.004637b0
mov eax, edi
mov ecx, ebx
call fcn.004637b0
mov eax, edi
mov ecx, ebx
call fcn.004637b0
mov eax, edi
mov ecx, ebx
call fcn.004637b0
mov eax, edx
mov ecx, ebx
call fcn.004637b0
mov eax, edx
mov ecx, ebx
call fcn.004637b0
mov eax, edx
mov ecx, ebx
call fcn.004637b0
mov eax, edx
mov ecx, ebx
call fcn.004637b0
mov eax, edx
mov ecx, ebx
call fcn.004637b0
mov eax, esi
mov ecx, ebx
call fcn.004637b0
mov eax, edx
call fcn.004637b0
mov eax, esi
call fcn.004637b0
mov eax, edx
call fcn.004637b0
mov eax, esi
call fcn.004637b0
mov eax, esi
call fcn.004637b0
call fcn.004637b0
mov eax, esi
mov ecx, ebx
call fcn.004637b0
mov eax, ebx
call fcn.004637b0
mov eax, ebx
call fcn.004637b0
mov eax, ebx
call fcn.004637b0
nop
call fcn.00462320
jmp fcn.005a6020