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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x8c]
cmp eax, dword [ecx + 8]
jbe 0x5aa642
sub esp, 0x10c
mov edx, dword [esp + 0x110]
mov ebx, dword [edx + 0xfc]
inc ebx
mov dword [esp + 0x48], ebx
mov ebp, dword [edx + 0x88]
mov dword [esp + 0x60], ebp
mov eax, ebx
mov ebx, dword [edx + 0x8c]
mov dword [esp + 0x5c], ebx
mov ecx, edx
mov edx, dword [edx + 0x84]
mov dword [esp + 0x9c], edx
mov esi, ebx
mov edi, ebp
xor ebx, ebx
mov dword [esp + 0x3c], ebx
xor ebp, ebp
mov dword [esp + 0x38], ebp
xor ebp, ebp
mov dword [esp + 0xa8], ebp
xor esi, esi
xchg esi, eax
mov byte [esp + 0x23], al
xchg esi, eax
xor edi, edi
mov dword [esp + 0xa0], edi
xor edi, edi
mov dword [esp + 0x2c], edi
xor edi, edi
mov dword [esp + 0x28], edi
xor edi, edi
mov dword [esp + 0xac], edi
xor edi, edi
mov dword [esp + 0x44], edi
xor edi, edi
mov dword [esp + 0x40], edi
xor edi, edi
mov dword [esp + 0xa4], edi
xor edi, edi
mov dword [esp + 0x34], edi
xor edi, edi
mov dword [esp + 0x30], edi
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x60]
mov esi, ebx
mov edi, ebp
jmp 0x5a97ee
mov ebp, dword [esp + 0x54]
mov dword [esp + 0xac], ecx
mov dword [esp + 0x44], edi
mov dword [esp + 0x40], esi
mov dword [esp + 0x34], eax
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x110]
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x58], ebx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], edx
cmp dword [ecx + 0x64], 4
jge 0x5a983c
mov dword [esp], ecx
mov dword [esp + 4], 4
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a9b3a
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov edx, dword [ecx + 0x8c]
test edx, edx
jne 0x5a9977
mov edx, dword [ecx + 0x58]
mov ebx, dword [ecx + 0x54]
mov ebp, dword [ecx + 0x5c]
mov dword [esp + 0x98], ebp
mov ebp, dword [ecx + 0x60]
cmp edx, ebp
jbe 0x5aa638
mov dword [esp + 0x94], ebp
mov dword [esp + 0xc0], ebx
movzx ebx, byte [ebx + ebp]
cmp bl, 0x2d
jne 0x5a98ca
mov byte [esp + 0x27], bl
lea ebx, [ebp + 1]
cmp edx, ebx
jbe 0x5aa62f
mov ebx, dword [esp + 0xc0]
lea ebx, [ebx + ebp + 1]
cmp byte [ebx], 0x2d
jne 0x5a98c5
lea ebx, [ebp + 2]
cmp edx, ebx
jbe 0x5aa626
mov ebx, dword [esp + 0xc0]
lea ebp, [ebx + ebp + 2]
cmp byte [ebp], 0x2d
je 0x5a990a
movzx ebx, byte [esp + 0x27]
mov ebp, dword [esp + 0x94]
jmp 0x5a98ca
movzx ebx, byte [esp + 0x27]
cmp bl, 0x2e
jne 0x5a996b
lea ebx, [ebp + 1]
cmp edx, ebx
jbe 0x5aa61d
mov ebx, dword [esp + 0xc0]
lea ebx, [ebx + ebp + 1]
cmp byte [ebx], 0x2e
jne 0x5a995f
lea ebx, [ebp + 2]
cmp edx, ebx
jbe 0x5aa614
mov ebx, dword [esp + 0xc0]
lea ebp, [ebx + ebp + 2]
cmp byte [ebp], 0x2e
jne 0x5a9953
mov dword [esp], ebx
mov dword [esp + 4], edx
mov eax, dword [esp + 0x98]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x94]
add eax, 3
mov dword [esp + 0xc], eax
call fcn.005afad0
movzx eax, byte [esp + 0x10]
mov ecx, dword [esp + 0x110]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov edx, eax
mov eax, dword [esp + 0x48]
jmp 0x5a9979
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
xor edx, edx
jmp 0x5a9979
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
xor edx, edx
jmp 0x5a9979
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
xor edx, edx
jmp 0x5a9979
xor edx, edx
test dl, dl
jne 0x5a9b30
mov edx, dword [ecx + 0x58]
mov ebx, dword [ecx + 0x54]
mov ebp, dword [ecx + 0x60]
cmp edx, ebp
jbe 0x5aa60b
lea edx, [ebx + ebp]
cmp byte [edx], 0x23
je 0x5a9b1e
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0xa8]
mov ebp, dword [esp + 0x38]
jmp 0x5a9c2f
mov edx, dword [esp + 0x110]
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5aa5f3
movzx ebp, byte [ebx + eax]
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
je 0x5a9aa2
xchg ebp, eax
cmp al, 9
xchg ebp, eax
je 0x5a9aa2
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
je 0x5a9aa2
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
je 0x5a9aa2
xchg ebp, eax
cmp al, 0xc2
xchg ebp, eax
jne 0x5a9a1e
mov esi, edx
lea edx, [eax + 1]
cmp ecx, edx
jbe 0x5aa5ec
lea edx, [ebx + eax + 1]
cmp byte [edx], 0x85
jne 0x5a9a20
mov edx, esi
jmp 0x5a9aa2
mov esi, edx
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
jne 0x5aa131
lea edx, [eax + 1]
cmp ecx, edx
jbe 0x5aa5e5
mov edi, edx
lea edx, [ebx + eax + 1]
movzx edx, byte [edx]
cmp dl, 0x80
jne 0x5a9a6c
mov byte [esp + 0x26], dl
lea edx, [eax + 2]
cmp ecx, edx
jbe 0x5aa5de
lea edx, [ebx + eax + 2]
cmp byte [edx], 0xa8
jne 0x5a9a60
mov edx, esi
jmp 0x5a9aa2
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
movzx edx, byte [esp + 0x26]
jmp 0x5a9a71
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
jne 0x5aa131
cmp ecx, edi
jbe 0x5aa5d7
cmp dl, 0x80
jne 0x5aa131
lea edx, [eax + 2]
cmp ecx, edx
jbe 0x5aa5d0
lea edx, [ebx + eax + 2]
cmp byte [edx], 0xa9
jne 0x5aa131
mov edx, esi
cmp dword [edx + 0x64], 1
jge 0x5a9acc
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5aa122
mov edx, dword [esp + 0x110]
mov ebx, dword [esp + 0xa4]
mov ebp, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0xac]
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
jmp 0x5aa15d
mov edx, dword [esp + 0x110]
mov ebx, dword [edx + 0xe0]
test ebx, ebx
jne 0x5a9b15
mov ebx, dword [esp + 0x48]
cmp dword [edx + 0x8c], ebx
jge 0x5a97b8
jmp 0x5aa4c0
mov ebx, dword [esp + 0x48]
jmp 0x5a97b8
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x38]
jmp 0x5a9b49
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x38]
jmp 0x5a9b49
mov byte [esp + 0x118], 0
add esp, 0x10c
ret
lea edi, [esp + 0xc4]
lea esi, [0x662948]
call fcn.00463dbc
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0xc8], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], ebp
mov dword [esp + 0xdc], ebx
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], edx
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xec], eax
mov edi, dword [esp + 0x114]
test byte [edi], al
mov eax, dword [0x7c78f0]
test eax, eax
jne 0x5a9bd5
lea esi, [esp + 0xc4]
call fcn.00463dbc
jmp 0x5a9bf2
lea eax, [0x5fe3c0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xc4]
mov dword [esp + 8], eax
call fcn.00410860
movzx eax, byte [esp + 0x23]
test al, al
je 0x5a9c09
mov eax, dword [esp + 0x110]
mov byte [eax + 0x10c], 1
mov byte [esp + 0x118], 1
add esp, 0x10c
ret
mov ebx, eax
mov dword [esp + 0x58], esi
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], edi
mov ebp, ecx
mov ecx, dword [esp + 0x110]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], ebp
mov dword [esp + 0xa8], ebx
mov eax, dword [ecx + 0x54]
mov esi, dword [ecx + 0x58]
mov edi, dword [ecx + 0x5c]
mov edx, dword [ecx + 0x60]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
call fcn.005afad0
movzx eax, byte [esp + 0x10]
test al, al
jne 0x5a99b2
mov edx, dword [esp + 0x110]
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov ebp, dword [edx + 0x5c]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5aa606
mov esi, ebp
lea ebp, [ebx + eax]
cmp byte [ebp], 0x3a
je 0x5a9c95
xor eax, eax
jmp 0x5a9cb6
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
inc eax
mov dword [esp + 0xc], eax
call fcn.005afad0
movzx eax, byte [esp + 0x10]
mov edx, dword [esp + 0x110]
test al, al
jne 0x5a99b9
mov ebx, dword [edx + 0xe0]
test ebx, ebx
jle 0x5a9d13
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5aa601
movzx ebx, byte [ebx + eax]
cmp bl, 0x2c
je 0x5a99b9
cmp bl, 0x3f
je 0x5a99b9
cmp bl, 0x5b
je 0x5a99b9
cmp bl, 0x5d
je 0x5a99b9
cmp bl, 0x7b
je 0x5a99b9
cmp bl, 0x7d
je 0x5a99b9
movzx ebx, byte [esp + 0x23]
test bl, bl
je 0x5a9d22
mov ebp, dword [esp + 0x28]
jmp 0x5a9d36
mov ebp, dword [esp + 0x28]
test ebp, ebp
je 0x5aa039
test bl, bl
je 0x5a9f95
mov ebx, dword [esp + 0x40]
test ebx, ebx
jbe 0x5aa5f8
mov eax, dword [esp + 0xac]
cmp byte [eax], 0xa
jne 0x5a9e65
mov ecx, dword [esp + 0x30]
test ecx, ecx
jne 0x5a9dc5
mov ecx, dword [esp + 0x38]
inc ecx
mov ebx, dword [esp + 0x3c]
cmp ebx, ecx
jb 0x5a9d70
mov esi, dword [esp + 0xa8]
jmp 0x5a9dbb
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0xac]
mov ebp, dword [esp + 0x28]
mov esi, ebx
mov ebx, edx
mov edx, dword [esp + 0x110]
mov byte [ecx + esi - 1], 0x20
jmp 0x5a9f80
mov ebx, dword [esp + 0x38]
lea esi, [ecx + ebx]
mov edi, dword [esp + 0x3c]
cmp edi, esi
jae 0x5a9e16
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0xa8], ebx
mov edi, edx
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], esi
mov eax, dword [esp + 0xa8]
lea edx, [eax + ebx]
mov dword [esp], edx
mov edx, dword [esp + 0xa4]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00464050
mov eax, dword [esp + 0xac]
mov edx, dword [esp + 0x110]
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0xa8]
jmp 0x5a9f80
mov ecx, dword [esp + 0x38]
lea esi, [ebx + ecx]
mov edi, dword [esp + 0x3c]
cmp edi, esi
jae 0x5a9ebd
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], ebx
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0x38]
mov edi, edx
mov dword [esp + 0xa8], ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], esi
mov edx, dword [esp + 0xa8]
add ecx, edx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.00464050
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x3c]
cmp ebx, edx
jb 0x5a9efa
mov ebp, dword [esp + 0xa8]
jmp 0x5a9f37
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
mov ebp, eax
mov ebx, edi
mov eax, dword [esp + 0x38]
mov dword [esp + 0xa8], ebp
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ebx
add eax, ebp
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00464050
mov eax, dword [esp + 0xac]
mov edx, dword [esp + 0x110]
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0xa8]
xor edi, edi
xor edi, edi
mov dword [esp + 0x40], edi
xor edi, edi
mov dword [esp + 0x30], edi
xor edi, edi
jmp 0x5aa04d
mov eax, dword [esp + 0x38]
lea ecx, [ebp + eax]
mov esi, dword [esp + 0x3c]
cmp esi, ecx
jb 0x5a9fae
mov edi, dword [esp + 0xa8]
jmp 0x5a9feb
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
lea eax, [0x5e2160]
mov dword [esp + 0x10], eax
call fcn.0044a1f0
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x28]
mov edi, ebx
mov esi, edx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], ecx
mov dword [esp + 0xa8], edi
add eax, edi
mov dword [esp], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.00464050
mov eax, dword [esp + 0xac]
mov edx, dword [esp + 0x110]
mov ebx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0xa8]
movzx edi, byte [esp + 0x23]
xor ebp, ebp
jmp 0x5aa04d
mov ebx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0xa8]
movzx edi, byte [esp + 0x23]
mov dword [esp + 0x28], ebp
xchg edi, eax
mov byte [esp + 0x23], al
xchg edi, eax
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
call fcn.0059f650
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x110]
mov ebp, dword [ebx + 0x88]
mov esi, dword [ebx + 0x8c]
mov edi, dword [ebx + 0x84]
cmp dword [ebx + 0x64], 2
jge 0x5a9c18
mov dword [esp + 0x90], edx
mov dword [esp + 0x8c], ecx
mov dword [esp + 0xbc], eax
mov dword [esp + 0x88], edi
mov dword [esp + 0x84], esi
mov dword [esp + 0x80], ebp
mov dword [esp], ebx
mov dword [esp + 4], 2
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5aa113
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x110]
mov ebp, dword [esp + 0x80]
mov esi, dword [esp + 0x84]
mov edi, dword [esp + 0x88]
jmp 0x5a9c18
mov byte [esp + 0x118], 0
add esp, 0x10c
ret
mov byte [esp + 0x118], 0
add esp, 0x10c
ret
mov ecx, esi
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x38]
jmp 0x5a9b49
mov byte [esp + 0x23], al
mov eax, ebx
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x30], ebp
mov dword [esp + 0xa4], ebx
mov ebp, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov edx, dword [edx + 0x60]
cmp ebp, edx
jbe 0x5aa5c7
mov dword [esp + 0xb0], ebx
movzx ebx, byte [ebx + edx]
cmp bl, 0x20
je 0x5aa2b7
cmp bl, 9
je 0x5aa2b0
cmp bl, 0xd
je 0x5aa2a9
cmp bl, 0xa
je 0x5aa2a2
mov byte [esp + 0x27], bl
cmp bl, 0xc2
jne 0x5aa1e0
lea ebx, [edx + 1]
cmp ebp, ebx
jbe 0x5aa5be
mov ebx, dword [esp + 0xb0]
lea ebx, [ebx + edx + 1]
cmp byte [ebx], 0x85
je 0x5aa1d3
movzx ebx, byte [esp + 0x27]
jmp 0x5aa1e0
movzx edx, byte [esp + 0x27]
cmp dl, 0x20
jmp 0x5aa2b9
cmp bl, 0xe2
jne 0x5a9aef
lea ebx, [edx + 1]
cmp ebp, ebx
jbe 0x5aa5b5
mov dword [esp + 0x98], ebx
mov ebx, dword [esp + 0xb0]
lea ebx, [ebx + edx + 1]
movzx ebx, byte [ebx]
mov byte [esp + 0x25], bl
cmp bl, 0x80
jne 0x5aa241
lea ebx, [edx + 2]
cmp ebp, ebx
jbe 0x5aa5ac
mov ebx, dword [esp + 0xb0]
lea ebx, [ebx + edx + 2]
cmp byte [ebx], 0xa8
je 0x5aa237
movzx ebx, byte [esp + 0x27]
cmp bl, 0xe2
jmp 0x5aa256
movzx edx, byte [esp + 0x27]
cmp dl, 0x20
jmp 0x5aa2b9
mov dword [esp + 0x4c], edx
movzx edx, byte [esp + 0x27]
cmp dl, 0xe2
mov edx, dword [esp + 0x4c]
movzx ebx, byte [esp + 0x27]
jne 0x5a9aef
mov ebx, dword [esp + 0x98]
cmp ebp, ebx
jbe 0x5aa5a3
movzx ebx, byte [esp + 0x25]
cmp bl, 0x80
jne 0x5a9aef
lea ebx, [edx + 2]
cmp ebp, ebx
jbe 0x5aa59a
mov ebx, dword [esp + 0xb0]
lea edx, [ebx + edx + 2]
cmp byte [edx], 0xa9
jne 0x5a9aef
movzx edx, byte [esp + 0x27]
cmp dl, 0x20
jmp 0x5aa2b9
cmp bl, 0x20
mov edx, ebx
jmp 0x5aa2b9
cmp bl, 0x20
mov edx, ebx
jmp 0x5aa2b9
cmp bl, 0x20
mov edx, ebx
jmp 0x5aa2b9
mov edx, ebx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x78], edi
mov dword [esp + 0x74], esi
mov dword [esp + 0xb8], ecx
je 0x5aa2d7
cmp dl, 9
jne 0x5aa381
movzx ebx, byte [esp + 0x23]
test bl, bl
je 0x5aa31d
mov ebp, dword [esp + 0x48]
mov ecx, dword [esp + 0x110]
cmp dword [ecx + 0x8c], ebp
jge 0x5aa300
cmp dl, 9
je 0x5aa4df
test bl, bl
jmp 0x5aa302
test bl, bl
je 0x5aa324
mov dword [esp], ecx
call fcn.0059f3b0
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0xa0]
jmp 0x5aa353
mov ecx, dword [esp + 0x110]
mov dword [esp], ecx
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
call fcn.0059f650
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x2c], edx
mov edx, ecx
mov dword [esp + 0xa0], eax
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x78]
mov ecx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x30]
movzx eax, byte [esp + 0x23]
jmp 0x5aa44b
mov edx, dword [esp + 0x110]
cmp dword [edx + 0x64], 2
jge 0x5aa3c5
mov dword [esp], edx
mov dword [esp + 4], 2
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5aa58b
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x110]
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x78]
movzx ebx, byte [esp + 0x23]
test bl, bl
je 0x5aa41c
mov dword [esp], edx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.0059f8b0
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x28]
mov edi, dword [esp + 0x78]
mov esi, dword [esp + 0x74]
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0xa4], ebx
mov ebx, eax
movzx eax, byte [esp + 0x23]
jmp 0x5aa44b
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
call fcn.0059f8b0
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov eax, 1
xor edx, edx
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x110]
cmp dword [edx + 0x64], 1
jge 0x5aa150
mov dword [esp + 0x70], ebx
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x68], esi
mov dword [esp + 0xb4], ecx
mov dword [esp + 0x64], edi
mov byte [esp + 0x24], al
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5aa57c
movzx eax, byte [esp + 0x24]
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0x110]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x68]
mov edi, dword [esp + 0x64]
jmp 0x5aa150
mov ecx, edx
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x38]
jmp 0x5a9b49
nop
mov dword [ecx], 3
mov dword [ecx + 0x24], 0x1d
mov edx, dword [0x7c78f0]
test edx, edx
jne 0x5aa502
lea edx, [0x615e65]
mov dword [ecx + 0x20], edx
jmp 0x5aa510
lea edi, [ecx + 0x20]
lea eax, [0x615e65]
call fcn.00463730
mov edx, dword [esp + 0x9c]
mov dword [ecx + 0x28], edx
mov edx, dword [esp + 0x60]
mov dword [ecx + 0x2c], edx
mov edx, dword [esp + 0x5c]
mov dword [ecx + 0x30], edx
mov dword [ecx + 8], 0x2f
mov edx, dword [0x7c78f0]
test edx, edx
jne 0x5aa544
lea eax, [0x61b614]
mov dword [ecx + 4], eax
jmp 0x5aa552
lea edi, [ecx + 4]
lea eax, [0x61b614]
call fcn.00463730
mov eax, dword [ecx + 0x88]
mov edx, dword [ecx + 0x8c]
mov ebx, dword [ecx + 0x84]
mov dword [ecx + 0x14], ebx
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edx
mov byte [esp + 0x118], 0
add esp, 0x10c
ret
mov byte [esp + 0x118], 0
add esp, 0x10c
ret
mov byte [esp + 0x118], 0
add esp, 0x10c
ret
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, 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, edx
call fcn.004637b0
mov eax, edi
call fcn.004637b0
mov eax, edx
call fcn.004637b0
mov eax, edx
call fcn.004637b0
mov eax, edx
call fcn.004637b0
call fcn.004637b0
xor eax, eax
mov ecx, eax
call fcn.004637b0
call fcn.004637b0
call fcn.004637b0
mov eax, ebp
mov ecx, edx
call fcn.004637b0
mov eax, ebx
mov ecx, edx
call fcn.004637b0
mov eax, ebx
mov ecx, edx
call fcn.004637b0
mov eax, ebx
mov ecx, edx
call fcn.004637b0
mov eax, ebx
mov ecx, edx
call fcn.004637b0
mov eax, ebp
mov ecx, edx
call fcn.004637b0
nop
call fcn.00462320
jmp fcn.005a96f0