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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xf8]
cmp eax, dword [ecx + 8]
jbe 0x5ab4a5
sub esp, 0x178
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0x2c]
mov edx, dword [eax + 0x28]
test edx, edx
jne 0x5ab39e
mov ecx, dword [eax + 0xb8]
mov edx, dword [eax + 0xb4]
test edx, edx
jne 0x5ab373
movzx ecx, byte [eax + 0x90]
test cl, cl
jne 0x5ab2c0
mov dword [esp], eax
call fcn.005ab7e0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5ab282
cmp al, 0x3c
jne 0x5ab16e
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5ab130
mov ecx, dword [esp + 0x17c]
lea edx, [ecx + 0xb8]
mov dword [esp + 0x9c], edx
cmp al, 0x21
je 0x5aa794
cmp al, 0x2f
je 0x5aa477
cmp al, 0x3f
je 0x5a9cbe
cmp al, 0xa
jne 0x5a9440
mov ebx, dword [ecx + 0xbc]
dec ebx
mov dword [ecx + 0xbc], ebx
movzx eax, al
mov dword [ecx + 0xac], eax
mov eax, dword [ecx + 0xc0]
add eax, 0xffffffff
mov edx, dword [ecx + 0xc4]
mov dword [ecx + 0xc0], eax
adc edx, 0xffffffff
mov dword [ecx + 0xc4], edx
mov dword [esp], ecx
call fcn.005aca40
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0x10]
movzx ebp, byte [esp + 0x14]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5a9bf9
mov dword [esp + 0x98], eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0x94], edx
mov dword [esp + 0x60], ebx
lea eax, [0x62a080]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
xor ecx, ecx
xor edx, edx
jmp 0x5a94c0
mov ecx, ebx
mov eax, ebp
mov dword [esp + 0x54], ecx
mov dword [esp + 0x50], edx
mov dword [esp + 0x90], eax
mov ebx, dword [esp + 0x17c]
mov dword [esp], ebx
call fcn.005ab740
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5a9bbb
cmp al, 0x2f
je 0x5a9a9d
cmp al, 0x3e
je 0x5a9965
cmp al, 0xa
jne 0x5a9959
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
dec edx
mov dword [ecx + 0xbc], edx
movzx edx, al
mov dword [ecx + 0xac], edx
mov edx, dword [ecx + 0xc0]
add edx, 0xffffffff
mov ebx, dword [ecx + 0xc4]
mov dword [ecx + 0xc0], edx
adc ebx, 0xffffffff
mov dword [ecx + 0xc4], ebx
lea edi, [esp + 0x144]
xor eax, eax
call fcn.0044b5ca
mov ecx, dword [esp + 0x17c]
mov dword [esp], ecx
call fcn.005aca40
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 4]
movzx esi, byte [esp + 0x14]
mov dword [esp + 0x144], ebp
mov dword [esp + 0x148], ecx
mov dword [esp + 0x14c], edx
mov dword [esp + 0x150], ebx
xchg esi, eax
test al, al
xchg esi, eax
je 0x5a9894
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab740
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5a9856
cmp al, 0x3d
je 0x5a97c4
mov ecx, dword [esp + 0x17c]
movzx edx, byte [ecx]
test dl, dl
jne 0x5a9714
cmp al, 0xa
jne 0x5a960a
mov edx, dword [ecx + 0xbc]
dec edx
mov dword [ecx + 0xbc], edx
movzx eax, al
mov dword [ecx + 0xac], eax
mov eax, dword [ecx + 0xc0]
add eax, 0xffffffff
mov edx, dword [ecx + 0xc4]
mov dword [ecx + 0xc0], eax
adc edx, 0xffffffff
mov dword [ecx + 0xc4], edx
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x14c]
mov dword [esp + 0x154], edx
mov dword [esp + 0x158], eax
mov eax, dword [esp + 0x50]
lea edx, [eax + 1]
mov ebx, dword [esp + 0x54]
cmp edx, ebx
jg 0x5a96d0
mov ebp, dword [esp + 0x90]
lea eax, [eax + eax*2]
mov esi, ecx
mov ecx, dword [0x881b80]
lea edi, [ebp + eax*8]
test ecx, ecx
jne 0x5a9689
mov eax, esi
lea esi, [esp + 0x144]
call fcn.0044baa4
jmp 0x5a94bc
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x5c], edx
mov dword [esp + 0x58], ebx
lea eax, [0x647b00]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x144]
mov dword [esp + 8], eax
call fcn.0040ed40
mov eax, dword [esp + 0x17c]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x8c]
jmp 0x5a94bc
lea ecx, [0x647b00]
mov dword [esp], ecx
mov ebp, dword [esp + 0x90]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00437ce0
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
lea edx, [eax + 1]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x17c]
jmp 0x5a9663
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x23
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5a97b0
lea ecx, [0x6877e8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5a97a2
mov dword [ecx + 0xb8], eax
mov eax, dword [ecx + 0xb4]
mov ecx, dword [ecx + 0xb8]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5a976b
mov edi, eax
lea eax, [0x6877e8]
call fcn.0044b4d0
mov eax, edi
jmp 0x5a973f
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab740
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab4b0
mov eax, dword [esp + 4]
test eax, eax
je 0x5a9818
mov dword [esp], 0
call fcn.0043aff0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x154], ecx
mov dword [esp + 0x158], eax
mov ecx, dword [esp + 0x17c]
jmp 0x5a964d
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb4]
test ecx, ecx
je 0x5a98dc
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x22
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5a9948
lea ecx, [0x6872f6]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5a993a
mov dword [ecx + 0xb8], eax
mov eax, ecx
jmp 0x5a98a5
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5a9933
mov edi, eax
lea eax, [0x6872f6]
call fcn.0044b4d0
mov eax, edi
jmp 0x5a9907
mov ecx, dword [esp + 0x17c]
jmp 0x5a952e
xor eax, eax
test al, al
je 0x5a9a82
mov ecx, dword [esp + 0x17c]
mov byte [ecx + 0x90], 1
mov edx, dword [esp + 0x64]
mov dword [ecx + 0x98], edx
mov ebx, dword [esp + 0x60]
mov dword [ecx + 0xa0], ebx
mov ebp, dword [0x881b80]
test ebp, ebp
jne 0x5a9a53
mov ebp, dword [esp + 0x94]
mov dword [ecx + 0x94], ebp
mov esi, dword [esp + 0x98]
mov dword [ecx + 0x9c], esi
lea edi, [esp + 0x15c]
xor eax, eax
call fcn.0044b5c9
mov dword [esp + 0x15c], ebp
mov dword [esp + 0x160], edx
mov dword [esp + 0x164], esi
mov dword [esp + 0x168], ebx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x16c], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x170], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x174], ecx
lea ecx, [0x659f40]
mov dword [esp], ecx
lea ecx, [esp + 0x15c]
mov dword [esp + 4], ecx
call fcn.00407150
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0x180], edx
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
add esp, 0x178
ret
lea edi, [ecx + 0x94]
mov eax, dword [esp + 0x94]
call fcn.0044b4d0
lea edi, [ecx + 0x9c]
mov ecx, eax
mov eax, dword [esp + 0x98]
call fcn.0044b4d0
mov ebp, ecx
mov esi, eax
jmp 0x5a99b9
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x94]
mov esi, dword [esp + 0x98]
jmp 0x5a99b9
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5a9b7d
cmp al, 0x3e
jne 0x5a9acd
mov eax, 1
jmp 0x5a9967
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x16
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5a9b69
lea ecx, [0x68213a]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5a9b5b
mov dword [ecx + 0xb8], eax
mov eax, dword [ecx + 0xb8]
mov ecx, dword [ecx + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5a9b24
mov edi, eax
lea eax, [0x68213a]
call fcn.0044b4d0
mov eax, edi
jmp 0x5a9af8
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb4]
test ecx, ecx
je 0x5a9c41
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1d
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5a9cad
lea ecx, [0x6851e8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5a9c9f
mov dword [ecx + 0xb8], eax
mov eax, ecx
jmp 0x5a9c0a
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5a9c98
mov edi, eax
lea eax, [0x6851e8]
call fcn.0044b4d0
mov eax, edi
jmp 0x5a9c6c
mov dword [esp], ecx
call fcn.005acb40
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
test al, al
je 0x5aa3b2
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x68], edx
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab740
mov eax, dword [esp + 0x17c]
lea ecx, [eax + 0x30]
mov dword [esp + 0x80], ecx
test byte [ecx], al
mov dword [eax + 0x34], 0
mov dword [eax + 0x3c], 0
mov byte [eax + 0x80], 0
xor edx, edx
jmp 0x5a9d27
mov eax, dword [esp + 0x17c]
mov edx, ecx
mov byte [esp + 0x28], dl
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5aa374
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.00459090
movzx eax, byte [esp + 0x28]
cmp al, 0x3f
jne 0x5aa36a
movzx ecx, byte [esp + 0x2b]
cmp cl, 0x3e
jne 0x5a9d1e
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0x3c]
mov ebx, dword [ecx + 0x38]
mov ebp, dword [ecx + 0x34]
mov esi, dword [ecx + 0x30]
cmp edx, ebp
ja 0x5ab49e
sub ebp, edx
add ebp, 0xfffffffe
sub ebx, edx
mov eax, ebx
neg ebx
sar ebx, 0x1f
and edx, ebx
add edx, esi
cmp ebp, eax
ja 0x5ab497
mov dword [esp + 0x64], eax
mov ebx, dword [esp + 0x2c]
cmp ebx, 3
jne 0x5aa361
mov esi, dword [esp + 0x68]
movzx ecx, word [esi]
cmp cx, 0x6d78
jne 0x5a9dd1
movzx ecx, byte [esi + 2]
cmp cl, 0x6c
je 0x5a9e52
lea edi, [esp + 0x130]
xor eax, eax
call fcn.0044b5cb
mov dword [esp + 0x130], esi
mov dword [esp + 0x134], ebx
mov dword [esp + 0x138], edx
mov dword [esp + 0x13c], ebp
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x140], ecx
lea ecx, [0x654580]
mov dword [esp], ecx
lea ecx, [esp + 0x130]
mov dword [esp + 4], ecx
call fcn.00407150
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0x180], edx
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
add esp, 0x178
ret
mov dword [esp + 0x78], edx
mov dword [esp + 0x48], ebp
mov dword [esp], 0
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
call fcn.0043aff0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x7c], ecx
lea edx, [0x67cf3b]
mov dword [esp], edx
mov dword [esp + 4], 7
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.005ad0a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x5a9fc4
cmp ecx, 3
je 0x5a9fa9
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
lea eax, [0x635280]
mov dword [esp], eax
lea eax, [esp + 0xc0]
mov dword [esp + 4], eax
call fcn.00407310
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
lea eax, [0x68d122]
mov dword [esp], eax
mov dword [esp + 4], 0x3a
lea eax, [esp + 0xc8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.0049ff10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0xb4], eax
mov eax, dword [0x881b80]
test eax, eax
jne 0x5a9f99
mov dword [edx + 0xb8], ecx
mov eax, dword [edx + 0xb8]
mov ecx, dword [edx + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
mov eax, ecx
call fcn.0044b4d0
jmp 0x5a9f62
movzx edx, word [eax]
cmp dx, 0x2e31
jne 0x5a9eb9
movzx edx, byte [eax + 2]
cmp dl, 0x30
jne 0x5a9eb9
lea eax, [0x67d2c7]
mov dword [esp], eax
mov dword [esp + 4], 8
mov eax, dword [esp + 0x7c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xc], eax
call fcn.005ad0a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
test eax, eax
je 0x5aa034
cmp eax, 5
je 0x5aa33a
je 0x5aa31a
mov dword [esp + 0x40], eax
mov dword [esp + 0x74], ecx
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x67c741]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 5
call fcn.004adda0
movzx eax, byte [esp + 0x10]
test al, al
je 0x5aa04d
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x48]
mov esi, dword [esp + 0x68]
jmp 0x5a9dd1
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x5aa224
mov ecx, dword [eax + 0x24]
mov edx, dword [eax + 0x20]
lea ebx, [0x63ed00]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00407780
mov eax, dword [esp + 0x17c]
mov edx, dword [eax + 0x14]
mov ecx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x74]
mov dword [esp], ebp
mov esi, dword [esp + 0x40]
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov ecx, dword [edx]
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
test edx, edx
je 0x5aa200
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x74]
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xac], eax
je 0x5aa1f9
mov eax, dword [edx + 4]
mov dword [esp + 0x98], eax
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
lea ecx, [0x635280]
mov dword [esp], ecx
lea ecx, [esp + 0xa8]
mov dword [esp + 4], ecx
call fcn.00407310
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], ecx
mov eax, dword [esp + 0x98]
mov dword [esp + 0x118], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x11c], eax
lea eax, [0x68486a]
mov dword [esp], eax
mov dword [esp + 4], 0x1b
lea eax, [esp + 0x110]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.0049ff10
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0xb4], ecx
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5aa1eb
mov dword [edx + 0xb8], eax
mov eax, dword [edx + 0xb8]
mov ecx, dword [edx + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5aa1b4
mov eax, edx
jmp 0x5aa0e3
test eax, eax
je 0x5ab424
mov edx, dword [esp + 0x17c]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.005a89f0
jmp 0x5aa034
mov eax, dword [esp + 0x74]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
lea eax, [0x635280]
mov dword [esp], eax
lea eax, [esp + 0xb0]
mov dword [esp + 4], eax
call fcn.00407310
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], eax
lea eax, [0x68d0e8]
mov dword [esp], eax
mov dword [esp + 4], 0x3a
lea eax, [esp + 0xb8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.0049ff10
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0xb4], ecx
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5aa30c
mov dword [edx + 0xb8], eax
mov eax, dword [edx + 0xb4]
mov ecx, dword [edx + 0xb8]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5aa2d5
mov edx, dword [ecx]
cmp edx, 0x2d465455
jne 0x5aa005
movzx edx, byte [ecx + 4]
cmp dl, 0x38
jne 0x5aa005
jmp 0x5aa034
mov edx, dword [ecx]
cmp edx, 0x2d667475
je 0x5aa34c
cmp eax, 5
jmp 0x5a9fff
movzx edx, byte [ecx + 4]
cmp dl, 0x38
je 0x5aa034
cmp eax, 5
jmp 0x5a9fff
mov esi, dword [esp + 0x68]
jmp 0x5a9dd1
movzx ecx, byte [esp + 0x2b]
jmp 0x5a9d1e
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb4]
test ecx, ecx
je 0x5aa3fa
mov ecx, dword [eax + 0xb4]
mov eax, dword [eax + 0xb8]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1d
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5aa466
lea ecx, [0x685205]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5aa458
mov dword [ecx + 0xb8], eax
mov eax, ecx
jmp 0x5aa3c3
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5aa451
mov edi, eax
lea eax, [0x685205]
call fcn.0044b4d0
mov eax, edi
jmp 0x5aa425
mov dword [esp], ecx
call fcn.005aca40
movzx eax, byte [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 8]
mov ebp, dword [esp + 4]
test al, al
jne 0x5aa561
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb4]
test ecx, ecx
je 0x5aa4e4
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1e
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5aa550
lea ecx, [0x6859ea]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5aa542
mov dword [ecx + 0xb8], eax
mov eax, ecx
jmp 0x5aa4ad
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5aa53b
mov edi, eax
lea eax, [0x6859ea]
call fcn.0044b4d0
mov eax, edi
jmp 0x5aa50f
mov dword [esp + 0x64], ecx
mov dword [esp + 0x98], edx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x94], ebp
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab740
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5aa756
cmp al, 0x3e
je 0x5aa6ac
mov dword [esp], 0
lea eax, [0x6852ed]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x1d
mov eax, dword [esp + 0x98]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x10], eax
lea eax, [0x67c762]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 6
call fcn.0043aed0
mov eax, dword [esp + 0x20]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x6c], ecx
lea edx, [0x647bc0]
mov dword [esp], edx
call fcn.00409aa0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x30]
mov dword [eax + 4], ecx
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5aa69d
mov ecx, dword [esp + 0x6c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5aa68f
mov dword [ecx + 0xb8], eax
mov eax, dword [ecx + 0xb8]
mov ecx, dword [ecx + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5aa658
mov edi, eax
mov eax, dword [esp + 0x6c]
call fcn.0044b4d0
mov eax, edi
jmp 0x5aa62c
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
mov eax, dword [esp + 0x94]
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x124], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x12c], eax
lea eax, [0x641640]
mov dword [esp], eax
lea eax, [esp + 0x120]
mov dword [esp + 4], eax
call fcn.00407150
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov dword [esp], ecx
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5ab0f2
cmp al, 0x2d
je 0x5aadb2
cmp al, 0x5b
jne 0x5aa9c9
xor eax, eax
jmp 0x5aa7c7
lea eax, [ecx + 1]
cmp eax, 6
jge 0x5aa8fe
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5aa8c0
mov ecx, dword [esp + 0x38]
cmp ecx, 6
jae 0x5ab40f
lea edx, [0x67c828]
movzx ebx, byte [edx + ecx]
cmp bl, al
je 0x5aa7c4
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x14
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5aa8ac
lea ecx, [0x68161a]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5aa89e
mov dword [ecx + 0xb8], eax
mov eax, dword [ecx + 0xb8]
mov ecx, dword [ecx + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5aa867
mov edi, eax
lea eax, [0x68161a]
call fcn.0044b4d0
mov eax, edi
jmp 0x5aa83b
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
mov byte [esp + 8], 1
call fcn.005aba20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test edx, edx
je 0x5aa98b
mov dword [esp + 0xe8], edx
mov dword [esp + 0xec], ecx
mov dword [esp + 0xf0], eax
lea eax, [0x63de60]
mov dword [esp], eax
lea eax, [esp + 0xe8]
mov dword [esp + 4], eax
call fcn.00407390
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov ecx, dword [esp + 0x17c]
lea edx, [ecx + 0x30]
mov dword [esp + 0x88], edx
test byte [edx], al
mov dword [ecx + 0x34], 0
mov dword [ecx + 0x3c], 0
mov byte [ecx + 0x80], 0
mov dword [esp], edx
mov byte [esp + 4], al
call fcn.00459090
xor eax, eax
xor ecx, ecx
jmp 0x5aabd2
inc ecx
movzx eax, byte [esp + 0x24]
cmp ecx, 3
jge 0x5aab53
mov dword [esp + 0x3c], ecx
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5aab15
mov ecx, dword [esp + 0x3c]
cmp ecx, 3
jae 0x5ab408
lea edx, [0x67bc3b]
movzx ebx, byte [edx + ecx]
cmp bl, al
je 0x5aaa06
mov byte [esp + 0x2a], al
mov ebx, dword [esp + 0x88]
xor ebp, ebp
jmp 0x5aaaa0
mov dword [esp + 0x34], ebp
movzx eax, byte [edx + ebp]
mov byte [esp + 4], al
mov dword [esp], ebx
call fcn.00459090
mov eax, dword [esp + 0x34]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x88]
movzx eax, byte [esp + 0x2a]
mov ecx, dword [esp + 0x3c]
lea edx, [0x67bc3b]
mov ebx, dword [esp + 0x88]
cmp ebp, ecx
jge 0x5aaaae
cmp ebp, 3
jb 0x5aaa64
jmp 0x5ab401
mov ecx, dword [esp + 0x44]
inc ecx
mov edx, ecx
mov byte [esp + 0x2b], al
mov dword [esp + 0x44], edx
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
mov byte [esp + 4], al
call fcn.00459090
movzx eax, byte [esp + 0x24]
movzx ecx, byte [esp + 0x2b]
cmp al, cl
je 0x5aaccc
test al, al
jne 0x5aacc3
cmp cl, 0x27
je 0x5aacb8
cmp cl, 0x22
je 0x5aacb8
cmp cl, 0x3e
je 0x5aacac
cmp cl, 0x3c
jne 0x5aaca3
xor ecx, ecx
jmp 0x5aaa0c
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0x34]
sub edx, dword [ecx + 0x3c]
cmp edx, 1
jne 0x5aac6a
mov dword [ecx + 0x34], 0
mov dword [ecx + 0x3c], 0
mov byte [ecx + 0x80], 0
xor edx, edx
xor ebx, ebx
jmp 0x5aab92
mov ecx, dword [esp + 0x17c]
movzx edx, byte [esp + 0x26]
mov ebx, eax
mov byte [esp + 0x26], bl
mov byte [esp + 0x29], dl
mov dword [esp], ecx
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5aac2c
movzx ecx, byte [esp + 0x29]
cmp cl, 0x2d
jne 0x5aac22
movzx ecx, byte [esp + 0x26]
cmp cl, 0x2d
jne 0x5aab84
cmp al, 0x3e
jne 0x5aab84
movzx eax, byte [esp + 0x24]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x44], ecx
mov byte [esp + 0x24], al
mov edx, dword [esp + 0x17c]
mov dword [esp], edx
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5aad74
movzx ecx, byte [esp + 0x24]
test cl, cl
jne 0x5aad6b
cmp al, 0x3e
jne 0x5aad62
mov edx, dword [esp + 0x44]
test edx, edx
jne 0x5aaab5
jmp 0x5aacd7
movzx ecx, byte [esp + 0x26]
jmp 0x5aab84
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov byte [ecx + 0x80], 0
lea ebx, [edx - 1]
test ebx, ebx
jl 0x5ab3e7
mov ebp, dword [ecx + 0x38]
mov esi, dword [ecx + 0x3c]
mov edi, dword [ecx + 0x34]
sub edi, esi
cmp ebx, edi
jg 0x5ab3e7
lea edx, [edx + esi - 1]
cmp edx, ebp
ja 0x5ab3e0
mov dword [ecx + 0x34], edx
jmp 0x5aab7e
mov ecx, dword [esp + 0x44]
jmp 0x5aabd2
mov edx, dword [esp + 0x44]
lea ecx, [edx - 1]
jmp 0x5aabd2
mov eax, ecx
mov ecx, dword [esp + 0x44]
jmp 0x5aabd2
mov ecx, dword [esp + 0x44]
jmp 0x5aabd2
xor eax, eax
mov ecx, dword [esp + 0x44]
jmp 0x5aabd2
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0x34]
mov edx, dword [eax + 0x30]
mov ebx, dword [eax + 0x3c]
mov eax, dword [eax + 0x38]
cmp ebx, ecx
ja 0x5ab3d9
sub eax, ebx
mov ebp, eax
neg eax
sar eax, 0x1f
and eax, ebx
add eax, edx
mov dword [esp + 0xdc], eax
sub ecx, ebx
mov dword [esp + 0xe0], ecx
mov dword [esp + 0xe4], ebp
lea eax, [0x63df20]
mov dword [esp], eax
lea eax, [esp + 0xdc]
mov dword [esp + 4], eax
call fcn.00407390
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
add esp, 0x178
ret
mov edx, dword [esp + 0x44]
jmp 0x5aaab5
mov edx, dword [esp + 0x44]
jmp 0x5aaab5
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5ab0b4
cmp al, 0x2d
jne 0x5ab004
mov eax, dword [esp + 0x17c]
lea ecx, [eax + 0x30]
mov dword [esp + 0x84], ecx
test byte [ecx], al
mov dword [eax + 0x34], 0
mov dword [eax + 0x3c], 0
mov byte [eax + 0x80], 0
xor edx, edx
xor ebx, ebx
jmp 0x5aae1b
mov eax, dword [esp + 0x17c]
movzx edx, byte [esp + 0x25]
movzx ebx, byte [esp + 0x2b]
mov byte [esp + 0x25], bl
mov byte [esp + 0x27], dl
mov dword [esp], eax
call fcn.005ab900
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
test cl, cl
je 0x5aafc6
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0x84]
mov dword [esp], eax
call fcn.00459090
movzx eax, byte [esp + 0x27]
cmp al, 0x2d
jne 0x5aafbc
movzx eax, byte [esp + 0x25]
cmp al, 0x2d
jne 0x5aae0a
movzx eax, byte [esp + 0x2b]
cmp al, 0x3e
jne 0x5aaf0c
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0x38]
mov edx, dword [eax + 0x34]
mov ebx, dword [eax + 0x30]
mov eax, dword [eax + 0x3c]
cmp eax, edx
ja 0x5ab41d
sub edx, eax
add edx, 0xfffffffd
sub ecx, eax
mov ebp, ecx
neg ecx
sar ecx, 0x1f
and eax, ecx
add eax, ebx
cmp edx, ebp
ja 0x5ab416
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], edx
mov dword [esp + 0xfc], ebp
lea eax, [0x63dec0]
mov dword [esp], eax
lea eax, [esp + 0xf4]
mov dword [esp + 4], eax
call fcn.00407390
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
add esp, 0x178
ret
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x2d
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5aafa8
lea ecx, [0x68a71d]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5aaf9a
mov dword [ecx + 0xb8], eax
mov eax, dword [ecx + 0xb8]
mov ecx, dword [ecx + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5aaf63
mov edi, eax
lea eax, [0x68a71d]
call fcn.0044b4d0
mov eax, edi
jmp 0x5aaf37
movzx eax, byte [esp + 0x25]
jmp 0x5aae0a
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
lea eax, [0x647bc0]
mov dword [esp], eax
call fcn.00409aa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x25
mov ecx, dword [0x881b80]
test ecx, ecx
jne 0x5ab0a0
lea ecx, [0x6884a5]
mov dword [eax], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
mov dword [eax + 8], edx
lea edx, [0x6c9220]
mov dword [ecx + 0xb4], edx
mov edx, dword [0x881b80]
test edx, edx
jne 0x5ab092
mov dword [ecx + 0xb8], eax
mov eax, dword [ecx + 0xb8]
mov ecx, dword [ecx + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
mov edi, dword [esp + 0x9c]
call fcn.0044b4d0
jmp 0x5ab05b
mov edi, eax
lea eax, [0x6884a5]
call fcn.0044b4d0
mov eax, edi
jmp 0x5ab02f
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
cmp al, 0xa
jne 0x5ab276
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xbc]
dec edx
mov dword [ecx + 0xbc], edx
movzx eax, al
mov dword [ecx + 0xac], eax
mov eax, dword [ecx + 0xc0]
add eax, 0xffffffff
mov edx, dword [ecx + 0xc4]
mov dword [ecx + 0xc0], eax
adc edx, 0xffffffff
mov dword [ecx + 0xc4], edx
mov dword [esp], ecx
mov dword [esp + 4], 0xffffffff
mov byte [esp + 8], 0
call fcn.005aba20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test edx, edx
je 0x5ab238
mov dword [esp + 0xd0], edx
mov dword [esp + 0xd4], ecx
mov dword [esp + 0xd8], eax
lea eax, [0x63de60]
mov dword [esp], eax
lea eax, [esp + 0xd0]
mov dword [esp + 4], eax
call fcn.00407390
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov ecx, dword [esp + 0x17c]
jmp 0x5ab18b
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xb8]
mov eax, dword [eax + 0xb4]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov byte [eax + 0x90], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov ecx, dword [eax + 0xa0]
mov edx, dword [eax + 0x9c]
mov ebx, dword [eax + 0x98]
mov eax, dword [eax + 0x94]
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], ebx
mov dword [esp + 0x108], edx
mov dword [esp + 0x10c], ecx
lea eax, [0x641640]
mov dword [esp], eax
lea eax, [esp + 0x100]
mov dword [esp + 4], eax
call fcn.00407150
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
add esp, 0x178
ret
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], edx
mov dword [esp + 0x18c], ecx
add esp, 0x178
ret
mov eax, dword [edx + 0x10]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 4]
mov dword [esp + 0x180], ebx
mov dword [esp + 0x184], edx
mov dword [esp + 0x188], ecx
mov dword [esp + 0x18c], eax
add esp, 0x178
ret
call fcn.004259a0
ud2
call fcn.004259a0
ud2
lea eax, [0x635280]
mov dword [esp], eax
lea eax, [0x6c7ee0]
mov dword [esp + 4], eax
call fcn.00426780
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
mov dword [esp], 0
lea eax, [0x68b07b]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x30
mov eax, dword [esp + 0x74]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], eax
call fcn.0043ae70
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
lea eax, [0x635280]
mov dword [esp], eax
lea eax, [esp + 0xa0]
mov dword [esp + 4], eax
call fcn.00407310
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00426780
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.00449d70
jmp fcn.005a9360