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

Disassembly:
mov ecx, dword [0x7da588]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x4c]
cmp eax, dword [ecx + 8]
jbe 0x5a4055
sub esp, 0xcc
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x84]
mov dword [esp + 0x68], ecx
mov edx, dword [eax + 0x88]
mov dword [esp + 0x64], edx
mov ebx, dword [eax + 0x8c]
mov dword [esp + 0x60], ebx
mov dword [esp], eax
call fcn.0059c5c0
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x64]
test ecx, ecx
jg 0x5a2fbd
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a32c4
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x60]
cmp ecx, edx
jbe 0x5a404d
mov ebx, dword [eax + 0x54]
movzx edx, byte [ebx + edx]
cmp dl, 0x2b
jne 0x5a2fde
mov ecx, 1
jmp 0x5a2fec
cmp dl, 0x2d
jne 0x5a3129
mov ecx, 0xffffffff
mov dword [esp + 0x48], ecx
mov dword [esp], eax
call fcn.0059c5c0
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x64]
test ecx, ecx
jg 0x5a302a
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a311a
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x60]
cmp ecx, edx
jbe 0x5a4046
mov ebx, dword [eax + 0x54]
movzx edx, byte [ebx + edx]
cmp dl, 0x30
jb 0x5a310d
cmp dl, 0x39
ja 0x5a3109
cmp dl, 0x30
je 0x5a307b
movzx ecx, dl
mov dword [esp + 0x5c], ecx
nop
mov dword [esp], eax
call fcn.0059c5c0
mov eax, dword [esp + 0x5c]
add eax, 0xffffffd0
mov ecx, eax
mov eax, dword [esp + 0xd0]
jmp 0x5a310f
nop
mov dword [eax], 3
mov dword [eax + 0x24], 0x1d
mov ecx, dword [0x7da640]
test ecx, ecx
je 0x5a309d
mov ecx, dword [eax + 0x20]
call fcn.0046be70
mov dword [edi], ecx
lea ecx, [0x613d21]
mov dword [eax + 0x20], ecx
mov ecx, dword [esp + 0x68]
mov dword [eax + 0x28], ecx
mov ecx, dword [esp + 0x64]
mov dword [eax + 0x2c], ecx
mov ecx, dword [esp + 0x60]
mov dword [eax + 0x30], ecx
mov dword [eax + 8], 0x29
mov ecx, dword [0x7da640]
test ecx, ecx
je 0x5a30d6
mov ecx, dword [eax + 4]
call fcn.0046be70
mov dword [edi], ecx
lea ecx, [0x617cd8]
mov dword [eax + 4], ecx
mov ecx, dword [eax + 0x84]
mov edx, dword [eax + 0x88]
mov ebx, dword [eax + 0x8c]
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], ebx
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
xor ecx, ecx
jmp 0x5a310f
xor ecx, ecx
mov edx, ecx
mov ecx, dword [esp + 0x48]
jmp 0x5a327c
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
cmp dl, 0x30
jb 0x5a3278
cmp dl, 0x39
ja 0x5a3272
cmp dl, 0x30
je 0x5a31e4
mov byte [esp + 0x23], dl
nop
mov dword [esp], eax
call fcn.0059c5c0
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x64]
test ecx, ecx
jg 0x5a317f
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a31d5
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x60]
cmp ecx, edx
jbe 0x5a403f
mov ebx, dword [eax + 0x54]
movzx edx, byte [ebx + edx]
cmp dl, 0x2b
jne 0x5a31a0
mov ecx, 1
jmp 0x5a31aa
cmp dl, 0x2d
jne 0x5a31c3
mov ecx, 0xffffffff
mov dword [esp + 0x48], ecx
mov dword [esp], eax
call fcn.0059c5c0
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x48]
jmp 0x5a31c5
xor ecx, ecx
movzx edx, byte [esp + 0x23]
movzx edx, dl
add edx, 0xffffffd0
jmp 0x5a327c
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
nop
mov dword [eax], 3
mov dword [eax + 0x24], 0x1d
mov ecx, dword [0x7da640]
test ecx, ecx
je 0x5a3206
mov ecx, dword [eax + 0x20]
call fcn.0046be70
mov dword [edi], ecx
lea ecx, [0x613d21]
mov dword [eax + 0x20], ecx
mov ecx, dword [esp + 0x68]
mov dword [eax + 0x28], ecx
mov ecx, dword [esp + 0x64]
mov dword [eax + 0x2c], ecx
mov ecx, dword [esp + 0x60]
mov dword [eax + 0x30], ecx
mov dword [eax + 8], 0x29
mov ecx, dword [0x7da640]
test ecx, ecx
je 0x5a323f
mov ecx, dword [eax + 4]
call fcn.0046be70
mov dword [edi], ecx
lea ecx, [0x617cd8]
mov dword [eax + 4], ecx
mov ecx, dword [eax + 0x84]
mov edx, dword [eax + 0x88]
mov ebx, dword [eax + 0x8c]
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], ebx
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
xor edx, edx
xor ecx, ecx
jmp 0x5a327c
xor edx, edx
xor ecx, ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x38], edx
mov ebx, dword [eax + 0x64]
test ebx, ebx
jg 0x5a32db
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a32b5
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a32db
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
mov ebx, dword [eax + 0x58]
mov ebp, dword [eax + 0x60]
cmp ebx, ebp
jbe 0x5a4036
mov ebx, dword [eax + 0x54]
movzx ebx, byte [ebx + ebp]
cmp bl, 0x20
je 0x5a32fa
cmp bl, 9
jne 0x5a3341
mov dword [esp], eax
call fcn.0059c5c0
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x64]
test ecx, ecx
jg 0x5a32d3
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a3332
mov eax, dword [esp + 0xd0]
jmp 0x5a32d3
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
cmp bl, 0x23
jne 0x5a34aa
mov dword [esp], eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x60]
mov dword [esp + 0xc], ebx
call fcn.005a7410
movzx eax, byte [esp + 0x10]
test al, al
je 0x5a337c
mov edx, dword [esp + 0xd0]
jmp 0x5a338d
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov edx, eax
mov ecx, dword [edx + 0x58]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5a4031
mov ebx, dword [edx + 0x54]
movzx ebp, byte [ebx + eax]
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
je 0x5a34a0
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
je 0x5a34a0
xchg ebp, eax
cmp al, 0xc2
xchg ebp, eax
jne 0x5a33d7
lea esi, [eax + 1]
cmp ecx, esi
jbe 0x5a402a
lea esi, [ebx + eax + 1]
cmp byte [esi], 0x85
je 0x5a34a0
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
jne 0x5a3443
lea esi, [eax + 1]
cmp ecx, esi
jbe 0x5a4023
lea edi, [ebx + eax + 1]
movzx edi, byte [edi]
xchg edi, eax
cmp al, 0x80
xchg edi, eax
jne 0x5a3419
lea edx, [eax + 2]
cmp ecx, edx
jbe 0x5a401c
lea edx, [ebx + eax + 2]
cmp byte [edx], 0xa8
je 0x5a3488
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
mov edx, dword [esp + 0xd0]
jmp 0x5a341e
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
jne 0x5a3443
cmp ecx, esi
jbe 0x5a4015
xchg edi, eax
cmp al, 0x80
xchg edi, eax
jne 0x5a3443
lea esi, [eax + 2]
cmp ecx, esi
jbe 0x5a400e
lea ebx, [ebx + eax + 2]
cmp byte [ebx], 0xa9
je 0x5a34a0
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5a34a0
mov dword [esp], edx
call fcn.0059c5c0
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x64]
test ecx, ecx
jg 0x5a338b
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a3491
mov eax, dword [esp + 0xd0]
jmp 0x5a338b
mov edx, dword [esp + 0xd0]
jmp 0x5a34a0
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov eax, edx
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
mov ebx, dword [eax + 0x58]
mov ebp, dword [eax + 0x60]
cmp ebx, ebp
jbe 0x5a4005
mov esi, dword [eax + 0x54]
movzx edi, byte [esi + ebp]
xchg edi, eax
cmp al, 0xd
xchg edi, eax
je 0x5a35c4
xchg edi, eax
cmp al, 0xa
xchg edi, eax
jne 0x5a34db
xchg edi, eax
cmp al, 0xd
xchg edi, eax
jmp 0x5a35c4
xchg edi, eax
cmp al, 0xc2
xchg edi, eax
jne 0x5a3508
lea ecx, [ebp + 1]
cmp ebx, ecx
jbe 0x5a3ffc
lea ecx, [esi + ebp + 1]
cmp byte [ecx], 0x85
jne 0x5a3504
xchg edi, eax
cmp al, 0xd
xchg edi, eax
mov ecx, dword [esp + 0x48]
jmp 0x5a35c4
mov ecx, dword [esp + 0x48]
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
jne 0x5a35b5
lea ecx, [ebp + 1]
cmp ebx, ecx
jbe 0x5a3ff3
lea edx, [esi + ebp + 1]
movzx edx, byte [edx]
cmp dl, 0x80
jne 0x5a3562
lea eax, [ebp + 2]
cmp ebx, eax
jbe 0x5a3fec
lea eax, [esi + ebp + 2]
cmp byte [eax], 0xa8
jne 0x5a3554
xchg edi, eax
cmp al, 0xd
xchg edi, eax
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a35c4
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
mov eax, dword [esp + 0xd0]
jmp 0x5a3567
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
jne 0x5a35ad
cmp ebx, ecx
jbe 0x5a3fe3
cmp dl, 0x80
jne 0x5a35a3
lea edx, [ebp + 2]
cmp ebx, edx
jbe 0x5a3fda
lea edx, [esi + ebp + 2]
cmp byte [edx], 0xa9
jne 0x5a3599
xchg edi, eax
cmp al, 0xd
xchg edi, eax
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a35c4
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a35b5
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a35b5
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x5a37f7
xchg edi, eax
cmp al, 0xd
xchg edi, eax
je 0x5a3681
xchg edi, eax
cmp al, 0xa
xchg edi, eax
je 0x5a3681
xchg edi, eax
cmp al, 0xc2
xchg edi, eax
jne 0x5a35fd
lea ecx, [ebp + 1]
cmp ebx, ecx
jbe 0x5a3fd1
lea ecx, [esi + ebp + 1]
cmp byte [ecx], 0x85
jne 0x5a35f9
mov ecx, dword [esp + 0x48]
jmp 0x5a3681
mov ecx, dword [esp + 0x48]
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
jne 0x5a36eb
lea ecx, [ebp + 1]
cmp ebx, ecx
jbe 0x5a3fc8
lea edx, [esi + ebp + 1]
movzx edx, byte [edx]
cmp dl, 0x80
jne 0x5a364d
mov byte [esp + 0x22], dl
lea edx, [ebp + 2]
cmp ebx, edx
jbe 0x5a3fbf
lea edx, [esi + ebp + 2]
cmp byte [edx], 0xa8
jne 0x5a3641
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a3681
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
movzx edx, byte [esp + 0x22]
jmp 0x5a3652
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
jne 0x5a36e3
cmp ebx, ecx
jbe 0x5a3fb6
cmp dl, 0x80
jne 0x5a36d9
lea edx, [ebp + 2]
cmp ebx, edx
jbe 0x5a3fad
lea ecx, [esi + ebp + 2]
cmp byte [ecx], 0xa9
jne 0x5a36cf
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
cmp dword [eax + 0x64], 2
jge 0x5a36a7
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a36c0
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
call fcn.0059c680
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a36eb
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a36eb
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
jmp 0x5a36eb
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x38]
mov ebx, dword [eax + 0x8c]
mov ebp, dword [eax + 0x84]
mov esi, dword [eax + 0x88]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x34], 0
test edx, edx
jle 0x5a372b
mov ebx, dword [eax + 0xfc]
test ebx, ebx
jl 0x5a3727
add edx, ebx
mov dword [esp + 0x34], edx
jmp 0x5a372b
mov dword [esp + 0x34], edx
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp], eax
lea ecx, [esp + 0x34]
mov dword [esp + 4], ecx
lea edx, [esp + 0x6c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x68]
mov dword [esp + 0xc], edx
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x10], ebx
mov ebp, dword [esp + 0x60]
mov dword [esp + 0x14], ebp
lea esi, [esp + 0x3c]
mov dword [esp + 0x18], esi
call fcn.005a4060
movzx eax, byte [esp + 0x1c]
test al, al
je 0x5a37e8
mov edx, dword [esp + 0xd0]
mov ebx, dword [edx + 0x64]
test ebx, ebx
jg 0x5a37b2
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a37d9
mov edx, dword [esp + 0xd0]
movzx ebx, byte [esp + 0xd8]
xor eax, eax
xor ecx, ecx
xor ebp, ebp
xor esi, esi
xor edi, edi
xor eax, eax
mov dword [esp + 0x78], eax
xor ebp, ebp
mov dword [esp + 0x24], ebp
xor eax, eax
xor ebp, ebp
jmp 0x5a38b5
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
nop
mov dword [eax], 3
mov dword [eax + 0x24], 0x1d
mov ecx, dword [0x7da640]
test ecx, ecx
je 0x5a3819
mov ecx, dword [eax + 0x20]
call fcn.0046be70
mov dword [edi], ecx
lea ecx, [0x613d21]
mov dword [eax + 0x20], ecx
mov ecx, dword [esp + 0x68]
mov dword [eax + 0x28], ecx
mov ecx, dword [esp + 0x64]
mov dword [eax + 0x2c], ecx
mov ecx, dword [esp + 0x60]
mov dword [eax + 0x30], ecx
mov dword [eax + 8], 0x2b
mov ecx, dword [0x7da640]
test ecx, ecx
je 0x5a3852
mov ecx, dword [eax + 4]
call fcn.0046be70
mov dword [edi], ecx
lea ecx, [0x6184e7]
mov dword [eax + 4], 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 + 0xdc], 0
add esp, 0xcc
ret
movzx ebx, byte [esp + 0xd8]
mov edx, dword [esp + 0xd0]
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x78]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x30]
mov eax, dword [esp + 0x7c]
movzx eax, byte [esp + 0x21]
mov ecx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x7c]
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x30], esi
mov dword [esp + 0x2c], ecx
mov esi, dword [edx + 0x8c]
cmp dword [esp + 0x34], esi
jne 0x5a3bcc
mov esi, dword [edx + 0x58]
mov ebp, dword [edx + 0x60]
cmp esi, ebp
jbe 0x5a3fa4
mov esi, dword [edx + 0x54]
movzx ebp, byte [esi + ebp]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5a3bc8
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
jne 0x5a38fe
mov ebp, 1
jmp 0x5a390a
xchg ebp, eax
cmp al, 9
xchg ebp, eax
xchg ebp, ebx
sete bl
xchg ebp, ebx
test bl, bl
je 0x5a3917
mov eax, dword [esp + 0x7c]
jmp 0x5a39b9
test al, al
je 0x5a3924
mov eax, dword [esp + 0x7c]
jmp 0x5a39b9
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5a3933
mov eax, dword [esp + 0x7c]
jmp 0x5a39b9
test ecx, ecx
je 0x5a39b5
mov eax, dword [esp + 0x7c]
cmp byte [eax], 0xa
jne 0x5a39b9
mov ecx, dword [esp + 0x70]
test ecx, ecx
jne 0x5a39a8
mov ecx, dword [esp + 0x24]
inc ecx
cmp edi, ecx
jb 0x5a3957
mov ebp, dword [esp + 0x78]
jmp 0x5a399e
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x5dd460]
mov dword [esp + 0x10], eax
call fcn.00450060
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0xd0]
movzx ebx, byte [esp + 0xd8]
mov ebp, eax
mov eax, dword [esp + 0x7c]
mov byte [ecx + ebp - 1], 0x20
jmp 0x5a3a41
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x78]
jmp 0x5a3a41
mov eax, dword [esp + 0x7c]
mov ebp, dword [esp + 0x24]
lea esi, [ebp + ecx]
cmp edi, esi
jae 0x5a3a03
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
lea eax, [0x5dd460]
mov dword [esp + 0x10], eax
call fcn.00450060
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], esi
mov edx, dword [esp + 0x78]
lea ebx, [edx + ebp]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0046c780
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0xd0]
movzx ebx, byte [esp + 0xd8]
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x70]
add ecx, esi
cmp edi, ecx
jb 0x5a3a4f
mov esi, ecx
jmp 0x5a3a81
mov dword [esp + 0x58], ecx
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
lea eax, [0x5dd460]
mov dword [esp + 0x10], eax
call fcn.00450060
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x58]
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ecx
mov dword [esp + 0x78], ebp
mov eax, dword [esp + 0x70]
sub esi, eax
lea edx, [ebp + esi]
mov ebx, dword [esp + 0x6c]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call fcn.0046c780
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x60]
cmp ecx, edx
jbe 0x5a3f9d
mov ebx, dword [eax + 0x54]
movzx edx, byte [ebx + edx]
cmp dl, 0x20
jne 0x5a3adb
mov edx, 1
jmp 0x5a3ae1
cmp dl, 9
sete dl
mov byte [esp + 0x21], dl
mov ebp, dword [esp + 0x78]
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
jmp 0x5a3dca
mov ecx, dword [esp + 0x24]
jmp 0x5a3b15
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x78]
jmp 0x5a3b15
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x78]
cmp dword [eax + 0x64], 2
jge 0x5a3b3f
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a3f5a
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov ecx, dword [esp + 0x30]
mov dword [esp + 0xc], ecx
call fcn.0059cac0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x7c], 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 + 0xd0]
mov dword [esp], ebx
lea ebp, [esp + 0x34]
mov dword [esp + 4], ebp
lea esi, [esp + 0x6c]
mov dword [esp + 8], esi
mov esi, dword [esp + 0x68]
mov dword [esp + 0xc], esi
mov edi, dword [esp + 0x64]
mov dword [esp + 0x10], edi
mov ebp, dword [esp + 0x60]
mov dword [esp + 0x14], ebp
lea ebp, [esp + 0x3c]
mov dword [esp + 0x18], ebp
call fcn.005a4060
movzx eax, byte [esp + 0x1c]
test al, al
jne 0x5a3885
jmp 0x5a3f4b
mov ebp, dword [esp + 0x7c]
mov eax, dword [esp + 0x48]
cmp eax, 0xffffffff
je 0x5a3c5a
mov edx, dword [esp + 0x24]
lea esi, [edx + ecx]
cmp edi, esi
jae 0x5a3c22
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
lea eax, [0x5dd460]
mov dword [esp + 0x10], eax
call fcn.00450060
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x7c]
mov dword [esp + 0x78], eax
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], esi
mov eax, dword [esp + 0x78]
add edx, eax
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
call fcn.0046c780
mov eax, dword [esp + 0x48]
movzx ebx, byte [esp + 0xd8]
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x24]
jmp 0x5a3c62
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x24]
cmp eax, 1
jne 0x5a3ce3
mov eax, dword [esp + 0x70]
add edx, eax
cmp edi, edx
jb 0x5a3c75
mov eax, edx
jmp 0x5a3ca7
mov dword [esp + 0x54], edx
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], eax
lea eax, [0x5dd460]
mov dword [esp + 0x10], eax
call fcn.00450060
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x54]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], edi
mov ebx, dword [esp + 0x70]
sub eax, ebx
add eax, ecx
mov ebp, dword [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.0046c780
movzx ebx, byte [esp + 0xd8]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x78], ecx
lea esi, [0x6598f8]
mov eax, edi
lea edi, [esp + 0x80]
call fcn.0046c4ec
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x44]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], ebp
mov dword [esp + 0x98], esi
mov ecx, dword [esp + 0x78]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa8], eax
mov edi, dword [esp + 0xd4]
test byte [edi], al
mov eax, dword [0x7da640]
test eax, eax
je 0x5a3d95
lea eax, [0x5fb200]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x80]
mov dword [esp + 8], eax
call fcn.00412350
movzx ebx, byte [esp + 0xd8]
mov edi, dword [esp + 0xd4]
lea esi, [esp + 0x80]
call fcn.0046c4ec
test bl, bl
jne 0x5a3db0
mov eax, dword [esp + 0xd4]
mov byte [eax + 0x44], 0x20
mov byte [esp + 0xdc], 1
add esp, 0xcc
ret
mov edi, ebp
mov ecx, ebx
mov ebp, edx
movzx edx, byte [esp + 0x21]
mov ebx, dword [eax + 0x58]
mov esi, dword [eax + 0x60]
cmp ebx, esi
jbe 0x5a3f94
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ecx
mov dword [esp + 0x78], ebp
mov edx, dword [eax + 0x54]
movzx edi, byte [edx + esi]
xchg edi, eax
cmp al, 0xd
xchg edi, eax
je 0x5a3b15
xchg edi, eax
cmp al, 0xa
xchg edi, eax
je 0x5a3b15
xchg edi, eax
cmp al, 0xc2
xchg edi, eax
jne 0x5a3e24
lea ecx, [esi + 1]
cmp ebx, ecx
jbe 0x5a3f8b
lea ecx, [edx + esi + 1]
cmp byte [ecx], 0x85
je 0x5a3af6
mov ecx, dword [esp + 0x24]
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
jne 0x5a3eb9
lea ecx, [esi + 1]
cmp ebx, ecx
jbe 0x5a3f82
lea ebp, [edx + esi + 1]
movzx ebp, byte [ebp]
xchg ebp, eax
cmp al, 0x80
xchg ebp, eax
jne 0x5a3e6f
lea eax, [esi + 2]
cmp ebx, eax
jbe 0x5a3f7b
lea eax, [edx + esi + 2]
cmp byte [eax], 0xa8
je 0x5a3afc
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
mov eax, dword [esp + 0xd0]
jmp 0x5a3e74
xchg edi, eax
cmp al, 0xe2
xchg edi, eax
jne 0x5a3eb1
cmp ebx, ecx
jbe 0x5a3f72
xchg ebp, eax
cmp al, 0x80
xchg ebp, eax
jne 0x5a3ea7
lea ebp, [esi + 2]
cmp ebx, ebp
jbe 0x5a3f69
lea ecx, [edx + esi + 2]
cmp byte [ecx], 0xa9
je 0x5a3b0d
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x78]
jmp 0x5a3eb9
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x78]
jmp 0x5a3eb9
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x78]
xchg edi, eax
test al, al
xchg edi, eax
je 0x5a3b15
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0xc], ecx
call fcn.0059c860
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x64]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
test ecx, ecx
jg 0x5a3dbf
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], ebx
mov dword [esp + 0xc8], edx
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.005997f0
movzx eax, byte [esp + 8]
test al, al
je 0x5a3f3c
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xc8]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x50]
jmp 0x5a3dbf
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov byte [esp + 0xdc], 0
add esp, 0xcc
ret
mov eax, ebp
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov eax, esi
mov ecx, ebx
call fcn.0046bef0
mov eax, edx
call fcn.0046bef0
mov eax, ebp
mov ecx, esi
call fcn.0046bef0
mov eax, edx
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov eax, edx
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov eax, edx
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov eax, ecx
mov ecx, ebx
call fcn.0046bef0
mov eax, ebp
mov ecx, ebx
call fcn.0046bef0
mov eax, esi
call fcn.0046bef0
mov eax, esi
call fcn.0046bef0
mov eax, edx
call fcn.0046bef0
mov eax, esi
call fcn.0046bef0
mov eax, esi
call fcn.0046bef0
call fcn.0046bef0
mov eax, ebp
mov ecx, ebx
call fcn.0046bef0
mov eax, edx
call fcn.0046bef0
mov eax, edx
call fcn.0046bef0
mov eax, edx
call fcn.0046bef0
nop
call fcn.0046aa70
jmp fcn.005a2f40