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

Disassembly:
mov ecx, dword [0x82b814]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xbc]
cmp eax, dword [ecx + 8]
jbe 0x5d3e1f
sub esp, 0x13c
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx]
test edx, edx
jne 0x5d3bc8
lea edi, [esp + 0x5c]
xor eax, eax
call fcn.0046bba5
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x44]
test edx, edx
je 0x5d1d12
nop
mov word [esp + 0x4a], 0
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d1cbb
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3e06
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d1c03
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d1c54
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d1c54
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d1cbb
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d1ca6
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x4a]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
lea eax, [0x5d6b00]
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x134]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0x48]
test dl, dl
je 0x5d1e65
nop
mov word [esp + 0x48], 0
mov byte [esp + 0x49], 5
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d1e38
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3dee
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d1d87
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d1dd1
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d1dd1
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
jmp 0x5d1e38
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d1e23
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x48]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
nop
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [0x673d50]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x50]
test edx, edx
je 0x5d1fe8
nop
mov word [esp + 0x46], 0
mov byte [esp + 0x47], 0xa
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d1f91
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3dd6
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d1ed9
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d1f2a
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d1f2a
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d1f91
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d1f7c
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x46]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
lea eax, [0x5d68c0]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x12c]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x5c]
test edx, edx
je 0x5d216b
nop
mov word [esp + 0x44], 0
mov byte [esp + 0x45], 0xb
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d2114
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3dbe
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d205c
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d20ad
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d20ad
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d2114
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d20ff
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x44]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
lea eax, [0x5d66a0]
mov dword [esp + 0x124], eax
mov dword [esp + 0x128], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x124]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0x64]
test dl, dl
je 0x5d22ef
nop
mov word [esp + 0x42], 0
mov byte [esp + 0x43], 0x23
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d2298
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3da6
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d21e0
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d2231
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d2231
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d2298
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d2283
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x42]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
lea eax, [0x5d64e0]
mov dword [esp + 0x11c], eax
mov dword [esp + 0x120], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x11c]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x78]
test edx, edx
je 0x5d2472
nop
mov word [esp + 0x40], 0
mov byte [esp + 0x41], 0xd
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d241b
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3d8e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d2363
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d23b4
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d23b4
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d241b
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d2406
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x40]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 0
lea eax, [0x5d62a0]
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x114]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x84]
test edx, edx
je 0x5d25f8
nop
mov word [esp + 0x3e], 0
mov byte [esp + 0x3f], 0x32
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d25a1
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3d76
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d24e9
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d253a
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d253a
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d25a1
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d258c
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x3e]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x10c], 0
mov dword [esp + 0x110], 0
lea eax, [0x5d6050]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x10c]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0x8c]
test dl, dl
je 0x5d2781
nop
mov word [esp + 0x3c], 0
mov word [esp + 0x3c], 0x1ff
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d272a
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3d5e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d2672
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d26c3
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d26c3
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d272a
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d2715
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x3c]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
lea eax, [0x5d5e20]
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x104]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0x9c]
test dl, dl
je 0x5d29d1
nop
mov word [esp + 0x3a], 0
mov byte [esp + 0x3b], 0x17
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d28b3
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3d46
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d27f9
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d284c
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d284c
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d28b3
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d289e
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x3a]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
nop
mov word [esp + 0x38], 0
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d29d1
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3d2e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d2917
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d296a
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d296a
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d29d1
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d29bc
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x38]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov edx, dword [ecx + 0xa4]
test edx, edx
je 0x5d2b57
nop
mov word [esp + 0x36], 0
mov byte [esp + 0x37], 0x10
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d2b00
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3d16
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d2a48
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d2a99
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d2a99
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d2b00
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d2aeb
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x36]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
lea eax, [0x5d5b40]
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xfc]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0xac]
test dl, dl
je 0x5d2da7
nop
mov word [esp + 0x34], 0
mov byte [esp + 0x35], 0x12
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d2c89
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3cfe
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d2bcf
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d2c22
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d2c22
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d2c89
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d2c74
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x34]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
nop
mov word [esp + 0x32], 0
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d2da7
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3ce6
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d2ced
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d2d40
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d2d40
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d2da7
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d2d92
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x32]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov edx, dword [ecx + 0xb4]
test edx, edx
je 0x5d2f2d
nop
mov word [esp + 0x30], 0
mov byte [esp + 0x31], 0x2b
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d2ed6
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3cce
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d2e1e
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d2e6f
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d2e6f
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d2ed6
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d2ec1
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x30]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
lea eax, [0x5d58f0]
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xf4]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0xc0]
test edx, edx
je 0x5d30b3
nop
mov word [esp + 0x2e], 0
mov byte [esp + 0x2f], 0x2c
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d305c
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3cb6
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d2fa4
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d2ff5
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d2ff5
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d305c
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d3047
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x2e]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
lea eax, [0x5d56c0]
mov dword [esp + 0xec], eax
mov dword [esp + 0xf0], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xec]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0xcc]
test edx, edx
je 0x5d3239
nop
mov word [esp + 0x2c], 0
mov byte [esp + 0x2d], 0x33
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d31e2
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3c9e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d312a
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d317b
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d317b
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d31e2
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d31cd
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x2c]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
lea eax, [0x5d5220]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xe4]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0xd4]
test dl, dl
je 0x5d3489
nop
mov word [esp + 0x2a], 0
mov byte [esp + 0x2b], 0x2a
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d336b
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3c86
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d32b1
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d3304
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d3304
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d336b
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d3356
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x2a]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
nop
mov word [esp + 0x28], 0
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d3489
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3c6e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d33cf
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d3422
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d3422
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d3489
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d3474
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x28]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov edx, dword [ecx + 0xdc]
test edx, edx
je 0x5d360f
nop
mov word [esp + 0x26], 0
mov byte [esp + 0x27], 0x2d
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d35b8
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3c56
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d3500
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d3551
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d3551
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d35b8
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d35a3
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x26]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
lea eax, [0x5d4ff0]
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xdc]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0xfc]
test edx, edx
je 0x5d3795
nop
mov word [esp + 0x24], 0
mov byte [esp + 0x25], 0x39
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d373e
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3c3e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d3686
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d36d7
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d36d7
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d373e
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d3729
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x24]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
lea eax, [0x5d4e20]
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xd4]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0xe8]
test edx, edx
je 0x5d391b
nop
mov word [esp + 0x22], 0
mov byte [esp + 0x23], 0x29
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d38c4
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d3c26
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d380c
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x667a2b]
mov dword [eax], ecx
lea ecx, [0x6b96cc]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d385d
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d385d
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea edx, [0x6b96cc]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d38c4
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d38af
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x22]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xcc], 0
mov dword [esp + 0xd0], 0
lea eax, [0x5d4870]
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xcc]
mov dword [esp + 0xc], eax
call fcn.00557ae0
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x5c]
test edx, edx
je 0x5d3933
mov ebx, dword [esp + 0x60]
xor edi, edi
mov esi, ebx
xor ebp, ebp
mov ebx, edx
xor edx, edx
jmp 0x5d3962
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x78]
cmp ebx, edx
ja 0x5d3c1d
mov ebp, dword [esp + 0x64]
mov esi, dword [esp + 0x6c]
sub esi, ebx
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, ebx
sub edx, ebx
add ebp, esi
xor ebx, ebx
xor esi, esi
test ebx, ebx
jne 0x5d3b92
mov ebx, edi
lea edi, [esp + 0x8c]
call fcn.0046bba5
mov ecx, dword [esp + 0xa4]
nop
mov byte [esp + 0x21], 0
mov byte [esp + 0x21], 1
test ecx, ecx
jne 0x5d3c05
mov dword [esp + 0x58], ebp
mov dword [esp + 0x54], ebx
mov dword [esp + 0x4c], edx
movzx ecx, byte [esp + 0xa0]
test cl, cl
je 0x5d39fb
mov ecx, dword [esp + 0x98]
inc ecx
lea esi, [esp + 0x8c]
cmp dword [esi + 0x10], ecx
jge 0x5d39fb
lea eax, [0x639500]
mov dword [esp], eax
call fcn.0040d2d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x67086e]
mov dword [eax], ecx
lea ecx, [0x6b96cc]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
xor eax, eax
mov edx, dword [esp + 0x4c]
jmp 0x5d3a75
mov ecx, dword [esp + 0x9c]
mov esi, dword [esp + 0x98]
lea edi, [esi + 1]
mov ebp, dword [esp + 0x94]
cmp ecx, edi
jae 0x5d3a57
mov dword [esp + 0x50], esi
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x630a60]
mov dword [esp + 0x10], eax
call fcn.00450140
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
xor eax, eax
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
movzx ebx, byte [esp + 0x21]
mov byte [ebp + esi], bl
mov dword [esp + 0x98], edi
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x94], ebp
lea edi, [esp + 0xb8]
call fcn.0046bbab
lea ecx, [0x5d3e30]
mov dword [esp + 0xb8], ecx
mov ecx, dword [esp + 0x140]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc4], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0xc8], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0xc0], edx
lea edx, [esp + 0x8c]
mov dword [esp], edx
mov dword [esp + 4], 3
mov byte [esp + 8], 0
lea edx, [esp + 0xb8]
mov dword [esp + 0xc], edx
call fcn.00557ae0
mov ecx, dword [esp + 0x8c]
test ecx, ecx
je 0x5d3afe
mov eax, dword [esp + 0x90]
xor ebp, ebp
xor edx, edx
mov ebx, eax
mov eax, ecx
xor ecx, ecx
jmp 0x5d3b35
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0xa8]
cmp eax, ecx
ja 0x5d3c00
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x9c]
sub ebx, eax
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
sub ecx, eax
add edx, ebx
xor eax, eax
xor ebx, ebx
mov esi, dword [esp + 0x140]
mov dword [esi + 4], ecx
mov dword [esi + 8], ebp
mov edi, dword [0x82b968]
test edi, edi
je 0x5d3b66
mov dword [esp + 0x88], ebx
call fcn.0046b940
mov dword [edi], edx
mov ebx, dword [esi]
mov dword [edi + 4], ebx
mov ebx, dword [esp + 0x88]
mov dword [esi], edx
mov dword [esp + 0x144], edx
mov dword [esp + 0x148], ecx
mov dword [esp + 0x14c], ebp
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], ebx
add esp, 0x13c
ret
mov dword [esp + 0x144], 0
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], ebx
mov dword [esp + 0x154], esi
add esp, 0x13c
ret
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x144], edx
mov dword [esp + 0x148], eax
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
add esp, 0x13c
ret
call fcn.0046ba10
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
mov eax, ebx
mov ecx, edx
call fcn.0046ba10
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
lea eax, [0x6309e0]
mov dword [esp], eax
lea eax, [0x6b8bf8]
mov dword [esp + 4], eax
call fcn.00439050
nop
call fcn.0046a530
jmp fcn.005d1b50