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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x140]
cmp eax, dword [ecx + 8]
jbe 0x6340a8
sub esp, 0x1c0
mov ebx, dword [esp + 0x1c8]
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 9
xchg ebp, eax
ja 0x633110
xchg ebp, eax
cmp al, 4
xchg ebp, eax
ja 0x632c6a
xchg ebp, eax
cmp al, 2
xchg ebp, eax
jbe 0x632b14
xchg ebp, eax
cmp al, 3
xchg ebp, eax
jne 0x632ab3
mov ebp, dword [ebx + 0x18]
test ebp, ebp
je 0x6329a3
mov dword [esp + 0x88], ebp
mov esi, dword [esp + 0x1c4]
xor eax, eax
xor ecx, ecx
xor edx, edx
xor edi, edi
xor eax, eax
mov dword [esp + 0x5c], eax
xor eax, eax
jmp 0x633f1d
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0x190]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0x190], 6
mov ecx, dword [esp + 0x1c4]
mov ecx, dword [ecx]
mov ebx, dword [ecx + 4]
mov ebp, dword [ecx]
mov eax, edx
mov edx, dword [ecx + 8]
mov esi, ecx
lea ecx, [ebx + 1]
cmp edx, ecx
jae 0x632a44
mov dword [esp + 0xb4], esi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x632a32
mov dword [edi], eax
jmp 0x632a37
call fcn.00463350
mov esi, edi
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebx + 1]
mov dword [esi + 4], ecx
mov ecx, dword [0x9b1930]
lea edx, [ebx + ebx*2]
lea edi, [ebp + edx*8]
test ecx, ecx
jne 0x632a69
lea esi, [esp + 0x190]
call fcn.00463af4
jmp 0x632a8d
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x190]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
mov eax, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x18]
mov edx, dword [ebx + 0x1c]
movzx ebx, word [ebx + 2]
mov ebp, dword [esp + 0x1c4]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov word [esp + 0x10], bx
call fcn.00634720
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
movzx ebx, byte [esp + 0x20]
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
mov dword [esp + 0x1d4], edx
mov byte [esp + 0x1d8], bl
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 1
xchg ebp, eax
je 0x632c3a
xchg ebp, eax
cmp al, 2
xchg ebp, eax
jne 0x633c2e
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0x1a8]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0x1a8], 6
mov ecx, dword [esp + 0x1c4]
mov ecx, dword [ecx]
mov ebx, dword [ecx + 4]
mov ebp, dword [ecx]
mov eax, edx
mov edx, dword [ecx + 8]
mov esi, ecx
lea ecx, [ebx + 1]
cmp edx, ecx
jae 0x632bcb
mov dword [esp + 0xb4], esi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x632bb9
mov dword [edi], eax
jmp 0x632bbe
call fcn.00463350
mov esi, edi
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebx + 1]
mov dword [esi + 4], ecx
mov ecx, dword [0x9b1930]
lea edx, [ebx + ebx*2]
lea edi, [ebp + edx*8]
test ecx, ecx
jne 0x632bf0
lea esi, [esp + 0x1a8]
call fcn.00463af4
jmp 0x632c14
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x1a8]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
mov dword [esp + 0x1d4], 0
mov byte [esp + 0x1d8], 0
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 6
xchg ebp, eax
ja 0x632d4c
xchg ebp, eax
cmp al, 5
xchg ebp, eax
jne 0x632ce4
mov eax, dword [0x982178]
mov ecx, dword [0x98217c]
mov edx, dword [0x982180]
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov word [esp + 0x10], 0
call fcn.00634720
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
movzx ebx, byte [esp + 0x20]
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
mov dword [esp + 0x1d4], edx
mov byte [esp + 0x1d8], bl
add esp, 0x1c0
ret
mov eax, dword [0x982168]
mov ecx, dword [0x98216c]
mov edx, dword [0x982170]
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov word [esp + 0x10], 0
call fcn.00634720
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
movzx ebx, byte [esp + 0x20]
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
mov dword [esp + 0x1d4], edx
mov byte [esp + 0x1d8], bl
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 7
xchg ebp, eax
jne 0x632e91
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0x178]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0x178], 3
mov ecx, dword [esp + 0x1c4]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 4]
mov eax, edx
mov edx, dword [ebx]
mov esi, ecx
mov ecx, dword [ebx + 8]
mov edi, ebx
lea ebx, [ebp + 1]
cmp ecx, ebx
jae 0x632dff
mov dword [esp + 0xb4], edi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x632de8
mov dword [edi], eax
jmp 0x632ded
call fcn.00463350
mov esi, dword [esp + 0x1c4]
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebp + 1]
mov dword [edi + 4], ecx
mov ecx, dword [0x9b1930]
lea ebx, [ebp + ebp*2]
lea edi, [edx + ebx*8]
test ecx, ecx
jne 0x632e24
lea esi, [esp + 0x178]
call fcn.00463af4
jmp 0x632e48
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x178]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x1c4]
mov edx, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
cmp eax, ecx
jae 0x633ee4
lea ecx, [eax + eax*2]
lea ecx, [edx + ecx*8 + 8]
mov dword [ecx], 1
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 8
xchg ebp, eax
jne 0x632fd6
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0x160]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0x160], 3
mov ecx, dword [esp + 0x1c4]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 4]
mov eax, edx
mov edx, dword [ebx]
mov esi, ecx
mov ecx, dword [ebx + 8]
mov edi, ebx
lea ebx, [ebp + 1]
cmp ecx, ebx
jae 0x632f44
mov dword [esp + 0xb4], edi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x632f2d
mov dword [edi], eax
jmp 0x632f32
call fcn.00463350
mov esi, dword [esp + 0x1c4]
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebp + 1]
mov dword [edi + 4], ecx
mov ecx, dword [0x9b1930]
lea ebx, [ebp + ebp*2]
lea edi, [edx + ebx*8]
test ecx, ecx
jne 0x632f69
lea esi, [esp + 0x160]
call fcn.00463af4
jmp 0x632f8d
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x160]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x1c4]
mov edx, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
cmp eax, ecx
jae 0x633edf
lea ecx, [eax + eax*2]
lea ecx, [edx + ecx*8 + 8]
mov dword [ecx], 2
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0x148]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0x148], 3
mov ecx, dword [esp + 0x1c4]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 4]
mov eax, edx
mov edx, dword [ebx]
mov esi, ecx
mov ecx, dword [ebx + 8]
mov edi, ebx
lea ebx, [ebp + 1]
cmp ecx, ebx
jae 0x63307e
mov dword [esp + 0xb4], edi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x633067
mov dword [edi], eax
jmp 0x63306c
call fcn.00463350
mov esi, dword [esp + 0x1c4]
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebp + 1]
mov dword [edi + 4], ecx
mov ecx, dword [0x9b1930]
lea ebx, [ebp + ebp*2]
lea edi, [edx + ebx*8]
test ecx, ecx
jne 0x6330a3
lea esi, [esp + 0x148]
call fcn.00463af4
jmp 0x6330c7
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x148]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x1c4]
mov edx, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
cmp eax, ecx
jae 0x633eda
lea ecx, [eax + eax*2]
lea ecx, [edx + ecx*8 + 8]
mov dword [ecx], 4
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 0xd
xchg ebp, eax
ja 0x6337c5
xchg ebp, eax
cmp al, 0xb
xchg ebp, eax
jbe 0x633546
xchg ebp, eax
cmp al, 0xc
xchg ebp, eax
je 0x63340c
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
mov ebp, dword [ebx + 0x30]
mov dword [esp + 0x88], ebp
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x84], edx
lea edi, [esp + 0xe8]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0xe8], 2
mov ecx, dword [esp + 0x1c4]
mov esi, ebx
mov ebx, dword [ecx]
mov dword [esp + 0xb4], ebx
mov edi, ebp
mov ebp, dword [ebx + 4]
mov edx, dword [ebx]
mov ecx, dword [ebx + 8]
lea ebx, [ebp + 1]
cmp ecx, ebx
jae 0x6331e3
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x6331ca
mov dword [edi], eax
jmp 0x6331cf
call fcn.00463350
mov esi, dword [esp + 0x1c8]
mov edi, dword [esp + 0x88]
mov ebp, ecx
mov edx, eax
xor eax, eax
lea ecx, [ebp + 1]
mov ebx, dword [esp + 0xb4]
mov dword [ebx + 4], ecx
mov ecx, dword [0x9b1930]
lea ebx, [ebp + ebp*2]
lea edx, [edx + ebx*8]
test ecx, ecx
jne 0x633213
mov edi, edx
mov ebx, esi
lea esi, [esp + 0xe8]
call fcn.00463af4
jmp 0x633239
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edx
lea eax, [esp + 0xe8]
mov dword [esp + 8], eax
call fcn.00410b70
xor eax, eax
mov ebx, dword [esp + 0x1c8]
mov edx, dword [esp + 0x1c4]
mov ebp, dword [edx]
mov ecx, dword [ebp + 4]
mov ebp, dword [ebp]
mov esi, dword [esp + 0x84]
cmp esi, ecx
jae 0x633ed3
mov edi, dword [esp + 0x88]
shl edi, 1
mov ecx, esi
lea esi, [esi + esi*2]
lea ebp, [ebp + esi*8 + 8]
mov dword [ebp], edi
mov ebp, dword [edx]
lea esi, [edi + 1]
cmp dword [ebp + 0x10], esi
jge 0x633279
mov dword [ebp + 0x10], esi
mov ebp, dword [ebx + 8]
mov esi, dword [ebx + 4]
test ebp, ebp
jbe 0x633eca
mov eax, dword [esi]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.00632920
mov eax, dword [esp + 0x1c4]
mov ecx, dword [eax]
mov edx, dword [esp + 0x1c8]
mov edx, dword [edx + 0x30]
mov dword [esp + 0x88], edx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x80], ebx
nop
mov ecx, dword [ecx + 4]
mov dword [esp + 0x7c], ecx
mov ebp, dword [esp + 8]
mov dword [esp + 0x78], ebp
movzx esi, byte [esp + 0x14]
xchg esi, eax
mov byte [esp + 0x37], al
xchg esi, eax
lea edi, [esp + 0xd0]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0xd0], 2
mov eax, dword [esp + 0x1c4]
mov ecx, dword [eax]
mov edi, dword [ecx + 4]
mov ebx, dword [ecx]
mov esi, dword [ecx + 8]
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x633367
mov dword [esp + 0xb4], ecx
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x63334c
mov dword [edi], eax
jmp 0x633351
call fcn.00463350
mov edx, dword [esp + 0x88]
mov ebx, eax
mov eax, dword [esp + 0x1c4]
mov ebp, ecx
mov ecx, edi
mov edi, ebp
lea ebp, [edi + 1]
mov dword [ecx + 4], ebp
mov ecx, dword [0x9b1930]
lea ebp, [edi + edi*2]
lea edi, [ebx + ebp*8]
test ecx, ecx
jne 0x63338b
lea esi, [esp + 0xd0]
call fcn.00463af4
jmp 0x6333b6
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xd0]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x1c4]
mov edx, dword [esp + 0x88]
mov ebx, dword [eax]
mov ecx, dword [ebx + 4]
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x7c]
cmp ebp, ecx
jae 0x633ec3
shl edx, 1
or edx, 1
lea esi, [ebp + ebp*2]
lea ebx, [ebx + esi*8 + 8]
mov dword [ebx], edx
mov ebx, dword [eax]
inc edx
cmp dword [ebx + 0x10], edx
jge 0x6333e3
mov dword [ebx + 0x10], edx
mov edx, dword [esp + 0x84]
test edx, edx
je 0x6333f6
mov ebx, dword [esp + 0x78]
test ebx, ebx
jne 0x633401
xor esi, esi
xor ecx, ecx
xor edx, edx
jmp 0x633e20
mov esi, edx
shl edx, 1
mov edi, dword [eax]
jmp 0x633dd8
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0x100]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0x100], 3
mov ecx, dword [esp + 0x1c4]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 4]
mov eax, edx
mov edx, dword [ebx]
mov esi, ecx
mov ecx, dword [ebx + 8]
mov edi, ebx
lea ebx, [ebp + 1]
cmp ecx, ebx
jae 0x6334b4
mov dword [esp + 0xb4], edi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x63349d
mov dword [edi], eax
jmp 0x6334a2
call fcn.00463350
mov esi, dword [esp + 0x1c4]
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebp + 1]
mov dword [edi + 4], ecx
mov ecx, dword [0x9b1930]
lea ebx, [ebp + ebp*2]
lea edi, [edx + ebx*8]
test ecx, ecx
jne 0x6334d9
lea esi, [esp + 0x100]
call fcn.00463af4
jmp 0x6334fd
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x100]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x1c4]
mov edx, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
cmp eax, ecx
jae 0x633dc8
lea ecx, [eax + eax*2]
lea ecx, [edx + ecx*8 + 8]
mov dword [ecx], 0x20
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 0xa
xchg ebp, eax
jne 0x63368b
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0x130]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0x130], 3
mov ecx, dword [esp + 0x1c4]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 4]
mov eax, edx
mov edx, dword [ebx]
mov esi, ecx
mov ecx, dword [ebx + 8]
mov edi, ebx
lea ebx, [ebp + 1]
cmp ecx, ebx
jae 0x6335f9
mov dword [esp + 0xb4], edi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x6335e2
mov dword [edi], eax
jmp 0x6335e7
call fcn.00463350
mov esi, dword [esp + 0x1c4]
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebp + 1]
mov dword [edi + 4], ecx
mov ecx, dword [0x9b1930]
lea ebx, [ebp + ebp*2]
lea edi, [edx + ebx*8]
test ecx, ecx
jne 0x63361e
lea esi, [esp + 0x130]
call fcn.00463af4
jmp 0x633642
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x130]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x1c4]
mov edx, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
cmp eax, ecx
jae 0x633dc3
lea ecx, [eax + eax*2]
lea ecx, [edx + ecx*8 + 8]
mov dword [ecx], 8
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0x118]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0x118], 3
mov ecx, dword [esp + 0x1c4]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 4]
mov eax, edx
mov edx, dword [ebx]
mov esi, ecx
mov ecx, dword [ebx + 8]
mov edi, ebx
lea ebx, [ebp + 1]
cmp ecx, ebx
jae 0x633733
mov dword [esp + 0xb4], edi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x63371c
mov dword [edi], eax
jmp 0x633721
call fcn.00463350
mov esi, dword [esp + 0x1c4]
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebp + 1]
mov dword [edi + 4], ecx
mov ecx, dword [0x9b1930]
lea ebx, [ebp + ebp*2]
lea edi, [edx + ebx*8]
test ecx, ecx
jne 0x633758
lea esi, [esp + 0x118]
call fcn.00463af4
jmp 0x63377c
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x118]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x1c4]
mov edx, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
cmp eax, ecx
jae 0x633dbe
lea ecx, [eax + eax*2]
lea ecx, [edx + ecx*8 + 8]
mov dword [ecx], 0x10
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 0xf
xchg ebp, eax
jbe 0x6339ea
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
je 0x63394b
xchg ebp, eax
cmp al, 0x12
xchg ebp, eax
jne 0x63391d
mov ecx, dword [ebx + 8]
mov edx, dword [ebx + 4]
test ecx, ecx
je 0x63380d
mov dword [esp + 0x88], ecx
mov dword [esp + 0xb0], edx
xor eax, eax
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x633c6c
mov ecx, dword [esp + 0x1c4]
mov edx, dword [ecx]
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x88], edx
lea edi, [esp + 0xb8]
xor eax, eax
call fcn.0046361a
mov byte [esp + 0xb8], 6
mov ecx, dword [esp + 0x1c4]
mov ecx, dword [ecx]
mov ebx, dword [ecx + 4]
mov ebp, dword [ecx]
mov eax, edx
mov edx, dword [ecx + 8]
mov esi, ecx
lea ecx, [ebx + 1]
cmp edx, ecx
jae 0x6338ae
mov dword [esp + 0xb4], esi
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xb4]
mov dword [edi + 8], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x63389c
mov dword [edi], eax
jmp 0x6338a1
call fcn.00463350
mov esi, edi
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x88]
lea ecx, [ebx + 1]
mov dword [esi + 4], ecx
mov ecx, dword [0x9b1930]
lea edx, [ebx + ebx*2]
lea edi, [ebp + edx*8]
test ecx, ecx
jne 0x6338d3
lea esi, [esp + 0xb8]
call fcn.00463af4
jmp 0x6338f7
lea eax, [0x6f16e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xb8]
mov dword [esp + 8], eax
call fcn.00410b70
mov eax, dword [esp + 0x88]
mov dword [esp + 0x1cc], eax
shl eax, 1
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], 1
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 0x13
xchg ebp, eax
jne 0x633c2e
mov eax, dword [ebx + 4]
mov dword [esp + 0xac], eax
mov ecx, dword [ebx + 8]
mov dword [esp + 0x88], ecx
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x633c01
mov edx, dword [ebx + 8]
mov ebp, dword [ebx + 4]
test edx, edx
jbe 0x633b4d
mov eax, dword [ebp]
mov ecx, dword [esp + 0x1c4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00632920
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
movzx ebx, byte [esp + 0x14]
mov ebp, dword [esp + 0x1c8]
movzx ebp, word [ebp + 2]
mov esi, dword [esp + 0x1c4]
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov byte [esp + 0x10], bl
test bp, 0x20
setne al
mov byte [esp + 0x14], al
call fcn.006342d0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
movzx ebx, byte [esp + 0x24]
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
mov dword [esp + 0x1d4], edx
mov byte [esp + 0x1d8], bl
add esp, 0x1c0
ret
xchg ebp, eax
cmp al, 0xe
xchg ebp, eax
jne 0x633a94
mov edx, dword [ebx + 8]
mov ebp, dword [ebx + 4]
test edx, edx
jbe 0x633b44
mov eax, dword [ebp]
mov ecx, dword [esp + 0x1c4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00632920
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
movzx ebx, byte [esp + 0x14]
mov ebp, dword [esp + 0x1c8]
movzx ebp, word [ebp + 2]
mov esi, dword [esp + 0x1c4]
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov byte [esp + 0x10], bl
test bp, 0x20
setne al
mov byte [esp + 0x14], al
call fcn.00634600
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
movzx ebx, byte [esp + 0x24]
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
mov dword [esp + 0x1d4], edx
mov byte [esp + 0x1d8], bl
add esp, 0x1c0
ret
mov edx, dword [ebx + 8]
mov ebp, dword [ebx + 4]
test edx, edx
jbe 0x633b3b
mov eax, dword [ebp]
mov ecx, dword [esp + 0x1c4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00632920
movzx eax, byte [esp + 0x14]
mov byte [esp + 0x36], al
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x1c8]
movzx ebx, word [ebx + 2]
mov ebp, dword [esp + 8]
mov dword [esp + 0x3c], ebp
mov esi, dword [esp + 0x1c4]
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov byte [esp + 0x10], al
test bx, 0x20
setne cl
mov byte [esp + 0x14], cl
call fcn.00634470
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x1cc], edx
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], ecx
movzx eax, byte [esp + 0x36]
mov byte [esp + 0x1d8], al
add esp, 0x1c0
ret
xor eax, eax
mov ecx, eax
call fcn.004633d0
xor eax, eax
mov ecx, eax
call fcn.004633d0
xor eax, eax
mov ecx, eax
call fcn.004633d0
mov dword [esp + 0x58], ebx
mov dword [esp + 0x60], ebp
xchg edi, eax
mov byte [esp + 0x38], al
xchg edi, eax
mov dword [esp + 0x6c], esi
mov dword [esp + 0x84], edx
mov ecx, dword [eax + edx*4]
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov dword [esp + 4], ecx
call fcn.00632920
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
movzx ebx, byte [esp + 0x14]
mov ebp, dword [esp + 0x1c4]
mov dword [esp], ebp
mov esi, dword [esp + 0x6c]
mov dword [esp + 4], esi
mov esi, dword [esp + 0x60]
mov dword [esp + 8], esi
mov esi, dword [esp + 0x58]
mov dword [esp + 0xc], esi
movzx esi, byte [esp + 0x38]
xchg esi, eax
mov byte [esp + 0x10], al
xchg esi, eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], edx
mov byte [esp + 0x20], bl
call fcn.006340c0
mov eax, dword [esp + 0x84]
lea edx, [eax + 1]
mov esi, dword [esp + 0x24]
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
movzx edi, byte [esp + 0x30]
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0x88]
cmp edx, ecx
jl 0x633b56
mov dword [esp + 0x1cc], esi
mov dword [esp + 0x1d0], ebp
mov dword [esp + 0x1d4], ebx
xchg edi, eax
mov byte [esp + 0x1d8], al
xchg edi, eax
add esp, 0x1c0
ret
lea eax, [0x6cd520]
mov dword [esp], eax
lea eax, [0x79cfec]
mov dword [esp + 4], eax
call fcn.00437060
mov edx, dword [esp + 0x44]
inc edx
mov esi, eax
mov edi, ecx
mov ecx, dword [esp + 0x88]
mov eax, edx
mov edx, dword [esp + 0xb0]
mov ecx, ebx
mov ebx, ebp
mov ebp, ecx
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jge 0x633d38
mov dword [esp + 0x44], eax
mov edi, dword [edx + eax*4]
test eax, eax
jne 0x633cab
mov eax, dword [esp + 0x1c4]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00632920
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
movzx ebx, byte [esp + 0x14]
mov ebp, eax
mov eax, ecx
mov ecx, edx
jmp 0x633c46
xchg ebp, eax
mov byte [esp + 0x39], al
xchg ebp, eax
mov dword [esp + 0x64], esi
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x1c4]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00632920
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
movzx ebx, byte [esp + 0x14]
mov ebp, dword [esp + 0x70]
test ebp, ebp
je 0x633ce9
test edx, edx
jne 0x633cf6
xor ecx, ecx
xor ebp, ebp
xor eax, eax
xor ebx, ebx
jmp 0x633c46
mov byte [esp + 0x3b], bl
mov edi, dword [esp + 0x1c4]
mov esi, edi
mov edi, dword [edi]
mov dword [esp + 0x9c], edi
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x94]
jmp 0x633d78
movzx edx, byte [esp + 0x39]
test dl, dl
jne 0x633c46
xor ebx, ebx
jmp 0x633c46
mov dword [esp + 0x1cc], ebx
mov dword [esp + 0x1d0], esi
mov dword [esp + 0x1d4], edi
xchg ebp, eax
mov byte [esp + 0x1d8], al
xchg ebp, eax
add esp, 0x1c0
ret
mov edi, dword [esp + 0x9c]
movzx ebx, byte [esp + 0x3b]
mov esi, dword [esp + 0x1c4]
mov dword [esp + 0x48], ebp
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x48]
test esi, esi
je 0x633d24
mov ebp, dword [edi]
mov ebx, dword [edi + 4]
shr esi, 1
cmp ebx, esi
jbe 0x633db5
lea ebx, [esi + esi*2]
lea esi, [ebp + ebx*8]
mov edi, dword [esp + 0x48]
test edi, 1
jne 0x633da8
lea ebx, [ebp + ebx*8 + 4]
mov ebp, dword [ebx]
mov dword [ebx], edx
jmp 0x633d5d
mov esi, dword [esi + 8]
lea ebx, [ebp + ebx*8 + 8]
mov dword [ebx], edx
mov ebp, esi
jmp 0x633d5d
mov eax, esi
mov ecx, ebx
call fcn.004633e0
call fcn.004633e0
call fcn.004633e0
call fcn.004633e0
mov esi, dword [esp + 0x84]
mov edx, ebp
mov ebp, ecx
test edx, edx
je 0x633e14
mov dword [esp + 0x50], edx
mov ecx, ebp
mov ebp, dword [edi]
mov esi, dword [edi + 4]
shr edx, 1
cmp esi, edx
jbe 0x633eba
lea edx, [edx + edx*2]
mov esi, dword [esp + 0x50]
test esi, 1
jne 0x633e0a
lea edx, [ebp + edx*8 + 4]
mov ebp, dword [edx]
mov dword [edx], ebx
jmp 0x633dcd
lea edx, [ebp + edx*8 + 8]
mov ebp, dword [edx]
mov dword [edx], ebx
jmp 0x633dcd
mov ecx, dword [esp + 0x80]
movzx edx, byte [esp + 0x37]
test esi, esi
je 0x633e33
test ebp, ebp
je 0x633e33
mov ebx, dword [eax]
mov dword [esp + 0xa0], ebx
jmp 0x633e6b
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov byte [esp + 0x1d8], dl
add esp, 0x1c0
ret
mov edi, dword [esp + 0xa0]
mov edx, eax
mov esi, ecx
mov ecx, ebx
mov ebx, edi
test ecx, ecx
je 0x633ea9
mov dword [esp + 0x4c], ecx
mov edi, dword [ebx]
mov eax, edx
mov edx, dword [ebx + 4]
shr ecx, 1
cmp edx, ecx
jbe 0x633eb1
lea edx, [ecx + ecx*2]
mov ecx, esi
lea esi, [edi + edx*8]
mov ebx, dword [esp + 0x4c]
test ebx, 1
jne 0x633e9e
lea edx, [edi + edx*8 + 4]
mov ebx, dword [edx]
mov dword [edx], ebp
jmp 0x633e5c
mov ebx, dword [esi + 8]
lea edx, [edi + edx*8 + 8]
mov dword [edx], ebp
jmp 0x633e5c
shl ebp, 1
mov eax, ebp
mov ecx, esi
jmp 0x633e39
mov eax, ecx
mov ecx, edx
call fcn.004633e0
mov eax, edx
mov ecx, esi
call fcn.004633e0
mov eax, ebp
call fcn.004633e0
xor eax, eax
mov ecx, eax
call fcn.004633d0
mov eax, esi
call fcn.004633e0
call fcn.004633e0
call fcn.004633e0
call fcn.004633e0
mov ebx, dword [esp + 0x1c8]
mov eax, dword [esp + 0x88]
mov edi, dword [esp + 0x1c4]
mov eax, dword [esp + 0x84]
mov edi, esi
mov dword [esp + 0x5c], edx
mov esi, dword [esp + 0x1c4]
mov edx, ecx
mov ecx, ebp
mov ebp, dword [esp + 0x88]
cmp eax, ebp
jge 0x63400d
xchg edi, eax
mov byte [esp + 0x3a], al
xchg edi, eax
mov edi, dword [ebx + 0x1c]
mov ebp, dword [ebx + 0x14]
mov dword [esp + 0xa8], ebp
lea ebp, [eax + 1]
cmp edi, ebp
jb 0x63409e
cmp eax, ebp
ja 0x634097
mov dword [esp + 0x40], eax
mov dword [esp + 0x84], ebp
mov dword [esp + 0x74], ecx
mov dword [esp + 0x68], edx
movzx ecx, word [ebx + 2]
mov dword [esp], esi
sub edi, eax
mov edx, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
shl eax, 2
sar edi, 0x1f
and eax, edi
mov edi, dword [esp + 0xa8]
add eax, edi
mov dword [esp + 4], eax
mov dword [esp + 8], 1
mov dword [esp + 0xc], edx
mov word [esp + 0x10], cx
call fcn.00634720
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
movzx ebx, byte [esp + 0x20]
mov ebp, dword [esp + 0x40]
test ebp, ebp
jne 0x633fbc
mov ebp, eax
mov esi, ebx
jmp 0x633ee9
mov ebp, dword [esp + 0x74]
test ebp, ebp
je 0x633fc8
test eax, eax
jne 0x633fd5
xor ecx, ecx
xor ebp, ebp
xor edx, edx
xor esi, esi
jmp 0x633ee9
mov byte [esp + 0x3b], bl
mov esi, dword [esp + 0x1c4]
mov edi, dword [esi]
mov dword [esp + 0xa4], edi
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x8c]
jmp 0x634051
movzx esi, byte [esp + 0x3a]
and esi, ebx
jmp 0x633ee9
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], edx
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x1d4], eax
xchg edi, eax
mov byte [esp + 0x1d8], al
xchg edi, eax
add esp, 0x1c0
ret
mov edi, dword [esp + 0xa4]
movzx ebx, byte [esp + 0x3b]
mov esi, dword [esp + 0x1c4]
mov dword [esp + 0x54], ebp
mov ebp, dword [esp + 0x74]
mov esi, dword [esp + 0x54]
test esi, esi
je 0x634001
mov ebp, dword [edi]
mov ebx, dword [edi + 4]
shr esi, 1
cmp ebx, esi
jbe 0x63408e
lea ebx, [esi + esi*2]
lea esi, [ebp + ebx*8]
mov edi, dword [esp + 0x54]
test edi, 1
jne 0x634081
lea ebx, [ebp + ebx*8 + 4]
mov ebp, dword [ebx]
mov dword [ebx], eax
jmp 0x634036
mov esi, dword [esi + 8]
lea ebx, [ebp + ebx*8 + 8]
mov dword [ebx], eax
mov ebp, esi
jmp 0x634036
mov eax, esi
mov ecx, ebx
call fcn.004633e0
mov ecx, ebp
call fcn.00463430
mov ecx, ebp
mov edx, edi
call fcn.00463410
nop
call fcn.00461f40
jmp fcn.00632920