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

Disassembly:
mov ecx, dword [0x7c3e14]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x170]
cmp eax, dword [ecx + 8]
jbe 0x5a2127
sub esp, 0x1f0
mov edx, dword [esp + 0x1f4]
mov ecx, dword [edx + 0xe8]
lea eax, [ecx - 1]
cmp ecx, eax
jbe 0x5a2121
lea ecx, [ecx + ecx*8]
mov ebx, dword [edx + 0xe4]
lea esi, [ebx + ecx*8 - 0x48]
lea edi, [esp + 0xac]
call fcn.00468a6c
cmp dword [esp + 0xac], 0xf
jne 0x5a1073
mov ebx, dword [edx + 0xe8]
cmp ebx, 1
jle 0x5a1073
mov ecx, dword [edx + 0xe4]
lea ebx, [ebx + ebx*8]
lea esi, [ecx + ebx*8 - 0x90]
lea edi, [esp + 0xac]
call fcn.00468a6c
mov ebx, dword [edx + 0xfc]
test ebx, ebx
jge 0x5a107f
xor ebx, ebx
mov ebp, dword [edx + 0x68]
mov eax, dword [edx + 0x88]
mov dword [esp + 0x50], eax
mov ecx, dword [edx + 0x8c]
mov esi, edx
mov edx, dword [esp + 0x1fc]
test edx, edx
jle 0x5a10bd
mov edi, eax
sub eax, ebp
lea esi, [eax + 1]
test ebp, ebp
jne 0x5a10b2
cmp ecx, 1
jle 0x5a10b2
lea esi, [eax + 2]
mov edi, esi
mov esi, dword [esp + 0x1f4]
jmp 0x5a10c2
mov edi, 0xffffffff
mov dword [esp + 0x54], edi
mov edi, dword [esp + 0xb0]
mov esi, dword [esp + 0xb4]
mov eax, dword [esp + 0xb8]
cmp ebp, 1
xchg ebp, ebx
setle bl
xchg ebp, ebx
mov dword [esp + 0x94], eax
xor eax, eax
mov dword [esp + 0x48], eax
xor eax, eax
mov byte [esp + 0x21], al
xor eax, eax
mov dword [esp + 0x30], eax
xor eax, eax
mov dword [esp + 0x34], eax
xor eax, eax
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x200]
mov dword [esp + 0x78], eax
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x1f8]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x7c], edx
xor edx, edx
mov dword [esp + 0x40], edx
xor edx, edx
mov dword [esp + 0x38], edx
xor edx, edx
mov dword [esp + 0x3c], edx
mov ecx, dword [esp + 0x84]
mov eax, dword [esp + 0x94]
mov edx, dword [esp + 0x7c]
jmp 0x5a1190
inc ebx
mov dword [esp + 0x48], ebx
xchg ebp, eax
mov byte [esp + 0x21], al
xchg ebp, eax
mov ebp, edi
mov dword [esp + 0x9c], esi
mov ebx, edx
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x70]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x70], edx
mov edx, dword [esp + 0x48]
cmp edx, 0x200
jge 0x5a1c8b
mov dword [esp + 0x58], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], edi
mov dword [esp + 0x4c], ebx
xchg ebp, eax
mov byte [esp + 0x22], al
xchg ebp, eax
lea eax, [edx + 1]
mov ebx, dword [esp + 0x1f4]
cmp dword [ebx + 0x64], eax
jl 0x5a11d1
xor eax, eax
jmp 0x5a1201
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.00592e90
movzx eax, byte [esp + 8]
xor eax, 1
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x1f4]
movzx ebp, byte [esp + 0x22]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
test al, al
jne 0x5a1c6e
mov eax, dword [ebx + 0x58]
mov ebp, dword [ebx + 0x60]
mov dword [esp + 0x6c], ebp
add ebp, edx
cmp eax, ebp
jbe 0x5a2118
mov dword [esp + 0x60], eax
mov eax, dword [ebx + 0x54]
mov dword [esp + 0xa4], eax
movzx eax, byte [eax + ebp]
inc ecx
cmp al, 0x20
je 0x5a123a
cmp al, 9
jne 0x5a1265
mov ebx, edx
movzx ebp, byte [esp + 0x21]
movzx edi, byte [esp + 0x22]
mov esi, dword [esp + 0x9c]
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x6c], ecx
mov ecx, dword [esp + 0x1f4]
jmp 0x5a1162
mov dword [esp + 0x68], ecx
mov ecx, dword [ebx + 0xe0]
test ecx, ecx
jle 0x5a1287
cmp al, 0x5d
jne 0x5a127f
mov ecx, 1
jmp 0x5a1289
cmp al, 0x7d
sete cl
jmp 0x5a1289
xor ecx, ecx
test cl, cl
je 0x5a129c
mov ecx, edx
mov edx, dword [esp + 0x54]
mov ebp, dword [esp + 0x38]
jmp 0x5a14ab
cmp al, 0xd
jne 0x5a12a8
test cl, cl
jmp 0x5a141e
cmp al, 0xa
jne 0x5a12b4
test cl, cl
jmp 0x5a141e
cmp al, 0xc2
jne 0x5a130a
mov ebx, dword [esp + 0x6c]
lea esi, [ebx + edx + 1]
mov edx, dword [esp + 0x60]
cmp edx, esi
jbe 0x5a210f
mov edx, dword [esp + 0xa4]
lea edi, [edx + ebp + 1]
cmp byte [edi], 0x85
jne 0x5a12f7
test cl, cl
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
jmp 0x5a141e
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
cmp al, 0xe2
jne 0x5a1414
mov ebx, dword [esp + 0x6c]
lea esi, [ebx + edx + 1]
mov edx, dword [esp + 0x60]
cmp edx, esi
jbe 0x5a2106
mov edx, dword [esp + 0xa4]
lea edi, [edx + ebp + 1]
movzx edi, byte [edi]
xchg edi, eax
cmp al, 0x80
xchg edi, eax
jne 0x5a138a
mov edx, dword [esp + 0x48]
lea edx, [ebx + edx + 2]
mov ebx, dword [esp + 0x60]
cmp ebx, edx
jbe 0x5a20fd
mov edx, dword [esp + 0xa4]
lea edx, [edx + ebp + 2]
cmp byte [edx], 0xa8
jne 0x5a137a
test cl, cl
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
jmp 0x5a141e
cmp al, 0xe2
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0x6c]
jmp 0x5a138d
cmp al, 0xe2
jne 0x5a1401
mov edx, dword [esp + 0x60]
cmp edx, esi
jbe 0x5a20f4
xchg edi, eax
cmp al, 0x80
xchg edi, eax
jne 0x5a13ec
mov esi, ebp
mov ebp, dword [esp + 0x48]
lea ebx, [ebx + ebp + 2]
cmp edx, ebx
jbe 0x5a20eb
mov edx, dword [esp + 0xa4]
lea edx, [edx + esi + 2]
cmp byte [edx], 0xa9
jne 0x5a13d9
test cl, cl
mov edx, ebp
mov ebx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
jmp 0x5a141e
mov edx, ebp
mov ebx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
jmp 0x5a1414
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
jmp 0x5a1414
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
test al, al
jne 0x5a18df
test cl, cl
je 0x5a142c
mov ecx, edx
mov edx, dword [esp + 0x54]
mov ebp, dword [esp + 0x38]
jmp 0x5a14ab
movzx ebp, byte [esp + 0x21]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5a1452
mov eax, ebx
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x34]
mov ebp, dword [esp + 0x24]
jmp 0x5a1798
test cl, cl
je 0x5a1462
mov ecx, edx
mov edx, dword [esp + 0x54]
mov ebp, dword [esp + 0x38]
jmp 0x5a14ab
movzx ebp, byte [esp + 0x22]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5a16d3
mov ebp, dword [esp + 0x38]
mov ecx, edx
mov edx, dword [esp + 0x54]
cmp ebp, edx
jne 0x5a1489
cmp dword [esp + 0xac], 0x11
jne 0x5a14ab
mov edx, dword [esp + 0x40]
lea ecx, [edx - 1]
mov ebx, dword [esp + 0x4c]
cmp ebx, ecx
jle 0x5a16df
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x1f4]
mov edx, dword [esp + 0x30]
test edx, edx
je 0x5a16b8
mov edx, dword [esp + 0x40]
lea eax, [edx - 1]
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jle 0x5a14ce
mov esi, ebp
mov edi, dword [esp + 0x3c]
jmp 0x5a14d8
mov esi, ebp
mov edx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x28], edi
lea edi, [esp + 0x19c]
xor eax, eax
call fcn.004685fb
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x19c], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x1a0], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x1a4], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x1a8], ecx
mov dword [esp + 0x1ac], ebp
mov dword [esp + 0x1b0], edx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0x1bc], edx
mov ebp, dword [ebx + 0x84]
mov ecx, dword [esp + 0x48]
add ebp, ecx
mov dword [esp + 0x1c0], ebp
mov ebp, dword [esp + 0x50]
mov dword [esp + 0x1c4], ebp
mov edi, edx
mov edx, dword [esp + 0x68]
mov dword [esp + 0x1c8], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 0x1e4], edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x1e8], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x1ec], edx
mov edx, dword [ebx + 0xd4]
mov eax, dword [ebx + 0xd0]
inc eax
mov esi, dword [ebx + 0xcc]
cmp edx, eax
jae 0x5a1612
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x5f8dc0]
mov dword [esp + 0x10], eax
call fcn.0044db70
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1f4]
mov dword [ebx + 0xd4], eax
mov eax, dword [0x7c3fa0]
test eax, eax
je 0x5a15fc
call fcn.00468410
mov dword [edi], ecx
mov ebp, dword [ebx + 0xcc]
mov dword [edi + 4], ebp
mov dword [ebx + 0xcc], ecx
mov ebp, dword [esp + 0x50]
mov edi, dword [esp + 0x40]
mov eax, edx
mov esi, ecx
mov ecx, dword [esp + 0x48]
mov dword [ebx + 0xd0], eax
mov edx, dword [0x7c3fa0]
imul eax, eax, 0x54
lea eax, [eax + esi - 0x54]
test edx, edx
je 0x5a1667
mov dword [esp + 0xa8], eax
lea ecx, [0x5f8dc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea ecx, [esp + 0x19c]
mov dword [esp + 8], ecx
call fcn.00411660
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x1f4]
mov ebp, dword [esp + 0x50]
mov edi, dword [esp + 0x40]
lea esi, [esp + 0x19c]
mov edx, edi
mov edi, eax
call fcn.00468a4e
mov ecx, dword [ebx + 0x84]
mov eax, ebx
mov ebx, dword [esp + 0x48]
lea edi, [ecx + ebx]
mov ecx, ebp
xor esi, esi
xor ecx, ecx
mov dword [esp + 0x30], ecx
xor ebp, ebp
mov dword [esp + 0x9c], ebp
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x2c], ecx
mov ebp, dword [esp + 0x50]
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], ebp
mov ecx, ebp
jmp 0x5a1798
mov eax, ebx
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x34]
mov ebp, dword [esp + 0x24]
jmp 0x5a1798
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x38]
mov ecx, edx
mov edx, dword [esp + 0x30]
test edx, edx
je 0x5a1767
test al, al
je 0x5a1758
inc edx
mov eax, ebx
mov ebx, dword [esp + 0x34]
cmp ebx, edx
jae 0x5a174a
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x5ddd80]
mov dword [esp + 0x10], eax
call fcn.0044db70
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x9c], eax
mov ebx, ecx
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x40]
mov ebp, dword [esp + 0x9c]
mov byte [edx + ebp - 1], 0xa
jmp 0x5a1774
mov eax, ebx
mov ebx, dword [esp + 0x34]
mov ebp, dword [esp + 0x9c]
jmp 0x5a1774
mov eax, ebx
mov ebx, dword [esp + 0x34]
mov ebp, dword [esp + 0x9c]
mov eax, dword [esp + 0x1f4]
mov ecx, dword [esp + 0x50]
mov esi, ebx
mov dword [esp + 0x30], edx
mov dword [esp + 0x9c], ebp
mov ebp, dword [esp + 0x24]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x34], esi
mov dword [esp + 0x24], ebp
mov edx, dword [eax + 0x58]
mov ebp, dword [eax + 0x60]
lea esi, [ebp + ebx]
cmp edx, esi
jbe 0x5a20e2
mov eax, dword [eax + 0x54]
mov dword [esp + 0xa0], eax
movzx eax, byte [eax + esi]
cmp al, 0xd
je 0x5a18ad
cmp al, 0xa
je 0x5a18ad
mov dword [esp + 0x64], edi
cmp al, 0xc2
jne 0x5a1808
lea edi, [ebp + ebx + 1]
cmp edx, edi
jbe 0x5a20d9
mov edi, edx
mov edx, dword [esp + 0xa0]
lea edx, [edx + esi + 1]
cmp byte [edx], 0x85
jne 0x5a1802
mov edi, dword [esp + 0x64]
jmp 0x5a18ad
mov edx, edi
mov edi, dword [esp + 0x64]
cmp al, 0xe2
jne 0x5a1c3b
lea edi, [ebp + ebx + 1]
cmp edx, edi
jbe 0x5a20d0
mov dword [esp + 0x5c], edx
mov edx, dword [esp + 0xa0]
lea ecx, [edx + esi + 1]
movzx ecx, byte [ecx]
cmp cl, 0x80
jne 0x5a186c
mov dword [esp + 0x6c], ebp
lea ebx, [ebp + ebx + 2]
mov ebp, dword [esp + 0x5c]
cmp ebp, ebx
jbe 0x5a20c7
lea ebx, [edx + esi + 2]
cmp byte [ebx], 0xa8
jne 0x5a185f
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x48]
mov edi, dword [esp + 0x64]
jmp 0x5a18ad
cmp al, 0xe2
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x6c]
jmp 0x5a186f
cmp al, 0xe2
jne 0x5a1c37
mov eax, edx
mov edx, dword [esp + 0x5c]
cmp edx, edi
jbe 0x5a20be
cmp cl, 0x80
jne 0x5a1c31
lea ebp, [ebp + ebx + 2]
cmp edx, ebp
jbe 0x5a20b5
lea edx, [eax + esi + 2]
cmp byte [edx], 0xa9
jne 0x5a1c2b
mov ecx, dword [esp + 0x50]
mov edi, dword [esp + 0x64]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x1f4]
mov ebp, 1
mov esi, dword [esp + 0x9c]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x28], edi
xor ecx, ecx
mov dword [esp + 0x6c], ecx
xor edi, edi
mov ecx, dword [esp + 0x1f4]
jmp 0x5a1162
mov ebp, dword [esp + 0x30]
test ebp, ebp
je 0x5a1b1a
mov eax, edx
mov edx, dword [esp + 0x58]
mov ecx, ebx
mov ebx, dword [esp + 0x4c]
cmp edx, ebx
jge 0x5a1b0c
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x68]
cmp edx, ebx
je 0x5a1b00
lea edi, [esp + 0x148]
xor eax, eax
call fcn.004685fb
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x148], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x14c], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x150], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x154], ecx
mov dword [esp + 0x158], esi
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x15c], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x160], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x164], ecx
mov dword [esp + 0x168], edx
mov esi, ecx
mov ecx, dword [esp + 0x1f4]
mov edi, dword [ecx + 0x84]
mov edx, dword [esp + 0x48]
add edi, edx
mov dword [esp + 0x16c], edi
mov edi, edx
mov edx, dword [esp + 0x50]
mov dword [esp + 0x170], edx
mov dword [esp + 0x174], ebx
mov edx, dword [esp + 0x9c]
mov dword [esp + 0x190], edx
mov dword [esp + 0x194], ebp
mov edx, dword [esp + 0x34]
mov dword [esp + 0x198], edx
mov edx, dword [ecx + 0xd4]
mov ebp, dword [ecx + 0xd0]
inc ebp
mov eax, dword [ecx + 0xcc]
cmp edx, ebp
jae 0x5a1a51
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x5f8dc0]
mov dword [esp + 0x10], eax
call fcn.0044db70
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1f4]
mov dword [ebx + 0xd4], eax
mov eax, dword [0x7c3fa0]
test eax, eax
je 0x5a1a34
call fcn.00468410
mov dword [edi], ecx
mov ebp, dword [ebx + 0xcc]
mov dword [edi + 4], ebp
mov dword [ebx + 0xcc], ecx
mov ebx, dword [esp + 0x68]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x48]
mov ebp, edx
mov eax, ecx
mov ecx, dword [esp + 0x1f4]
mov dword [ecx + 0xd0], ebp
mov edx, dword [0x7c3fa0]
imul ebp, ebp, 0x54
lea ebp, [ebp + eax - 0x54]
test edx, edx
je 0x5a1aa6
mov dword [esp + 0xa8], ebp
lea eax, [0x5f8dc0]
mov dword [esp], eax
mov dword [esp + 4], ebp
lea eax, [esp + 0x148]
mov dword [esp + 8], eax
call fcn.00411660
mov ecx, dword [esp + 0x1f4]
mov ebx, dword [esp + 0x68]
mov ebp, dword [esp + 0xa8]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x48]
mov eax, edi
mov edi, ebp
mov edx, esi
lea esi, [esp + 0x148]
call fcn.00468a4e
mov ecx, dword [esp + 0x1f4]
mov ebp, dword [ecx + 0x84]
lea edi, [ebp + eax]
mov ebp, ebx
mov esi, dword [esp + 0x50]
xor ebx, ebx
mov dword [esp + 0x34], ebx
xor ebp, ebp
mov dword [esp + 0x30], ebp
xor esi, esi
mov dword [esp + 0x9c], esi
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x78], ebx
mov ebp, dword [esp + 0x50]
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], edi
mov ebp, ebx
mov esi, dword [esp + 0x50]
jmp 0x5a1b2a
mov edx, dword [esp + 0x38]
mov ebp, ebx
mov ebx, dword [esp + 0x2c]
jmp 0x5a1b2a
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x68]
mov ebx, dword [esp + 0x2c]
jmp 0x5a1b2a
mov eax, edx
mov ecx, ebx
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x68]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], esi
mov ebx, dword [ecx + 0x58]
mov esi, dword [ecx + 0x60]
add esi, eax
cmp ebx, esi
jbe 0x5a20ac
mov ebx, dword [ecx + 0x54]
add ebx, esi
cmp byte [ebx], 0x23
jne 0x5a1c5d
mov dword [esp + 0x28], edi
mov ebx, dword [esp + 0x30]
test ebx, ebx
jne 0x5a1b88
mov edx, dword [ecx + 0x84]
add edx, eax
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x9c]
mov esi, dword [esp + 0x68]
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x50]
mov esi, dword [esp + 0x9c]
jmp 0x5a1beb
inc ebx
mov ebp, dword [esp + 0x34]
cmp ebp, ebx
jb 0x5a1b9a
mov esi, dword [esp + 0x9c]
jmp 0x5a1be6
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x5ddd80]
mov dword [esp + 0x10], eax
call fcn.0044db70
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
mov edi, dword [esp + 0x28]
mov esi, eax
mov ebp, ecx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x1f4]
mov byte [ebx + esi - 1], 0xa
mov dword [esp + 0x38], edx
mov edx, dword [ecx + 0x84]
add edx, eax
mov dword [esp + 0x44], edx
jmp 0x5a1e49
mov edx, dword [ecx + 0xfc]
test edx, edx
jge 0x5a1c0c
xor edx, edx
mov eax, dword [ecx + 0x88]
xor ebx, ebx
xor ebp, ebp
movzx edi, byte [esp + 0x22]
xor edi, edi
mov dword [esp + 0x6c], edi
movzx edi, byte [esp + 0x22]
jmp 0x5a1162
mov ecx, dword [esp + 0x50]
jmp 0x5a1c3b
mov ecx, dword [esp + 0x50]
jmp 0x5a1c3b
mov ecx, dword [esp + 0x50]
mov eax, ebx
mov ecx, dword [esp + 0x1f4]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x9c]
mov ebp, dword [esp + 0x68]
jmp 0x5a1ca9
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x9c]
jmp 0x5a1ca9
mov eax, edx
mov ecx, ebx
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x9c]
mov ebp, dword [esp + 0x58]
jmp 0x5a1ca9
mov eax, edx
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x9c]
mov ebp, ecx
mov ecx, dword [esp + 0x1f4]
test ebx, ebx
je 0x5a1e2b
mov dword [esp + 0x9c], edi
lea edi, [esp + 0xf4]
xor eax, eax
call fcn.004685fb
mov ecx, dword [esp + 0x74]
mov dword [esp + 0xf4], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0xf8], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0xfc], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x100], ecx
mov dword [esp + 0x104], edx
mov eax, ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x108], ebx
mov dword [esp + 0x10c], ecx
mov dword [esp + 0x110], edx
mov dword [esp + 0x114], ebx
mov ecx, dword [esp + 0x1f4]
mov edx, dword [ecx + 0x84]
mov ebx, dword [esp + 0x48]
lea edx, [edx + ebx - 1]
mov dword [esp + 0x118], edx
mov edx, dword [esp + 0x50]
mov dword [esp + 0x11c], edx
mov dword [esp + 0x120], ebp
mov edx, dword [esp + 0x9c]
mov dword [esp + 0x124], edx
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], esi
mov edx, dword [ecx + 0xd4]
mov ebx, dword [ecx + 0xd0]
inc ebx
mov ebp, dword [ecx + 0xcc]
cmp edx, ebx
jae 0x5a1ddd
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x5f8dc0]
mov dword [esp + 0x10], eax
call fcn.0044db70
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1f4]
mov dword [ebx + 0xd4], eax
mov eax, dword [0x7c3fa0]
test eax, eax
je 0x5a1dd1
call fcn.00468410
mov dword [edi], ecx
mov eax, dword [ebx + 0xcc]
mov dword [edi + 4], eax
mov dword [ebx + 0xcc], ecx
mov ebp, ecx
mov ecx, ebx
mov ebx, edx
mov dword [ecx + 0xd0], ebx
mov eax, dword [0x7c3fa0]
imul ecx, ebx, 0x54
lea edi, [ecx + ebp - 0x54]
test eax, eax
je 0x5a1e1f
mov dword [esp + 0xa8], edi
lea eax, [0x5f8dc0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
call fcn.00411660
mov edi, dword [esp + 0xa8]
lea esi, [esp + 0xf4]
call fcn.00468a4e
mov byte [esp + 0x204], 1
add esp, 0x1f0
ret
mov ecx, dword [esp + 0x1f4]
mov edx, dword [esp + 0x44]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x34], ebp
mov dword [esp + 0x30], ebx
mov dword [esp + 0x9c], esi
mov eax, dword [ecx + 0x64]
test eax, eax
jg 0x5a1e9a
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.00592e90
movzx eax, byte [esp + 8]
test al, al
je 0x5a2063
mov ecx, dword [esp + 0x1f4]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x9c]
mov edi, dword [esp + 0x28]
mov eax, dword [ecx + 0x58]
mov edi, dword [ecx + 0x60]
cmp edi, eax
jae 0x5a20a3
mov ebx, dword [ecx + 0x54]
movzx ebp, byte [ebx + edi]
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
je 0x5a1fb5
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
je 0x5a1fb5
xchg ebp, eax
cmp al, 0xc2
xchg ebp, eax
jne 0x5a1ef3
lea esi, [edi + 1]
cmp eax, esi
jbe 0x5a209a
lea esi, [ebx + edi + 1]
cmp byte [esi], 0x85
jne 0x5a1eec
mov esi, dword [esp + 0x9c]
jmp 0x5a1fb5
mov esi, dword [esp + 0x9c]
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
jne 0x5a1faf
lea esi, [edi + 1]
cmp eax, esi
jbe 0x5a2091
lea ecx, [ebx + edi + 1]
movzx ecx, byte [ecx]
cmp cl, 0x80
jne 0x5a1f49
mov byte [esp + 0x23], cl
lea ecx, [edi + 2]
cmp eax, ecx
jbe 0x5a2086
lea ecx, [ebx + edi + 2]
cmp byte [ecx], 0xa8
jne 0x5a1f3d
mov ecx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x9c]
jmp 0x5a1fb5
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
movzx ecx, byte [esp + 0x23]
jmp 0x5a1f4e
xchg ebp, eax
cmp al, 0xe2
xchg ebp, eax
jne 0x5a1fa1
cmp eax, esi
jbe 0x5a207d
cmp cl, 0x80
jne 0x5a1f91
lea ecx, [edi + 2]
cmp eax, ecx
jbe 0x5a2072
lea ebx, [ebx + edi + 2]
cmp byte [ebx], 0xa9
jne 0x5a1f81
mov ecx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x9c]
jmp 0x5a1fb5
mov ecx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x9c]
jmp 0x5a1faf
mov ecx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x9c]
jmp 0x5a1faf
mov ecx, dword [esp + 0x1f4]
mov esi, dword [esp + 0x9c]
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5a2003
cmp dword [ecx + 0x84], edx
jge 0x5a1c00
cmp dword [ecx + 0x64], 2
jge 0x5a1fe7
mov dword [esp], ecx
mov dword [esp + 4], 2
call fcn.00592e90
movzx eax, byte [esp + 8]
test al, al
je 0x5a2054
mov ecx, dword [esp + 0x1f4]
mov dword [esp], ecx
call fcn.00595cf0
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x9c]
jmp 0x5a1e3a
cmp dword [ecx + 0x84], edx
jl 0x5a2038
mov dword [esp], ecx
mov dword [esp + 4], esi
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
call fcn.00595ed0
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
jmp 0x5a1e3a
mov dword [esp], ecx
call fcn.00595c30
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x9c]
jmp 0x5a1e3a
mov byte [esp + 0x204], 0
add esp, 0x1f0
ret
mov byte [esp + 0x204], 0
add esp, 0x1f0
ret
mov edx, eax
mov eax, ecx
mov ecx, edx
call fcn.00468460
mov ecx, eax
mov eax, esi
call fcn.00468460
mov edx, eax
mov eax, ecx
mov ecx, edx
call fcn.00468460
mov ecx, eax
mov eax, esi
call fcn.00468460
mov ecx, eax
mov eax, esi
call fcn.00468460
mov ecx, eax
mov eax, edi
call fcn.00468460
mov eax, esi
mov ecx, ebx
call fcn.00468460
mov eax, ebp
mov ecx, edx
call fcn.00468460
mov eax, edi
mov ecx, edx
call fcn.00468460
mov eax, ebx
mov ecx, ebp
call fcn.00468460
mov eax, edi
mov ecx, edx
call fcn.00468460
mov eax, edi
mov ecx, edx
call fcn.00468460
mov eax, esi
mov ecx, edx
call fcn.00468460
mov eax, ebx
mov ecx, edx
call fcn.00468460
mov eax, esi
mov ecx, edx
call fcn.00468460
mov eax, edx
mov ecx, ebx
call fcn.00468460
mov eax, esi
mov ecx, edx
call fcn.00468460
mov eax, esi
mov ecx, edx
call fcn.00468460
mov ecx, eax
mov eax, ebp
call fcn.00468460
call fcn.00468460
nop
call fcn.00467000
jmp fcn.005a0ff0