Function at 0x6434d0
Capabilities:
Check http status code

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x1dc]
cmp eax, dword [ecx + 8]
jbe 0x645327
sub esp, 0x25c
mov eax, 0
mov dword [esp + 0x258], eax
mov byte [esp + 0x67], 0
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], 0
mov dword [esp + 0x28c], 0
lea eax, [esp + 0x26c]
mov dword [esp], eax
call fcn.00645910
lea edi, [esp + 0x15c]
lea esi, [esp + 4]
call fcn.004637ea
lea eax, [0x6873e0]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.004048e0
mov eax, dword [esp + 8]
mov dword [esp + 0x13c], eax
lea ecx, [0x687460]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.004048e0
mov eax, dword [esp + 8]
mov dword [esp + 0x138], eax
lea ecx, [0x6874a0]
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.004048e0
mov eax, dword [esp + 8]
mov dword [esp + 0x134], eax
lea ecx, [0x6871e0]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.004048e0
mov eax, dword [esp + 8]
mov dword [esp + 0x130], eax
lea ecx, [0x6874a0]
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.004048e0
mov eax, dword [esp + 8]
mov dword [esp + 0x12c], eax
lea ecx, [0x6bcb80]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x643611
mov ecx, dword [esp + 0x260]
mov dword [eax + 8], ecx
jmp 0x64362b
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x260]
call fcn.00463080
mov eax, ecx
mov ecx, dword [esp + 0x260]
lea edi, [eax + 0xc]
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x643678
lea esi, [esp + 0x15c]
call fcn.004637ea
mov ecx, dword [esp + 0x13c]
mov dword [eax + 0x44], ecx
mov ecx, dword [esp + 0x138]
mov dword [eax + 0x48], ecx
mov ecx, dword [esp + 0x134]
mov dword [eax + 0x4c], ecx
mov ecx, dword [esp + 0x130]
mov dword [eax + 0x5c], ecx
mov ecx, dword [esp + 0x12c]
mov dword [eax + 0x60], ecx
jmp 0x6436f2
mov dword [esp + 0x128], eax
lea eax, [0x6ae2a0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x15c]
mov dword [esp + 8], eax
call fcn.00410e50
mov eax, dword [esp + 0x128]
lea edi, [eax + 0x44]
mov ecx, eax
mov eax, dword [esp + 0x13c]
call fcn.00463080
lea edi, [ecx + 0x48]
mov eax, dword [esp + 0x138]
call fcn.00463080
lea edi, [ecx + 0x4c]
mov eax, dword [esp + 0x134]
call fcn.00463080
lea edi, [ecx + 0x5c]
mov eax, dword [esp + 0x130]
call fcn.00463080
lea edi, [ecx + 0x60]
mov eax, dword [esp + 0x12c]
call fcn.00463080
mov eax, ecx
mov dword [esp + 0x284], eax
nop
mov eax, dword [esp + 0x264]
mov ecx, dword [eax + 0x1c]
mov edx, dword [esp + 0x268]
mov dword [esp], edx
lea ebx, [0x691d40]
mov dword [esp + 4], ebx
lea ebx, [0x8e8244]
mov dword [esp + 8], ebx
call ecx
mov eax, dword [esp + 0x10]
lea ecx, [0x69b780]
cmp dword [esp + 0xc], ecx
je 0x643736
xor eax, eax
mov ecx, dword [esp + 0x26c]
test ecx, ecx
je 0x643748
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
jmp 0x643756
mov edx, dword [esp + 0x270]
mov ebx, dword [esp + 0x274]
mov dword [esp + 0xc4], eax
cmp ebx, 5
jne 0x643b5f
cmp dword [edx], 0x70747468
jne 0x643b54
cmp byte [edx + 4], 0x73
jne 0x643b49
mov edx, dword [esp + 0x260]
mov ebx, dword [edx + 0x58]
test ebx, ebx
je 0x64378e
test ecx, ecx
jmp 0x64379b
mov ebx, dword [edx + 0x54]
test ebx, ebx
je 0x643b45
test ecx, ecx
jne 0x6437ad
mov ecx, dword [esp + 0x278]
mov ebx, dword [esp + 0x27c]
jmp 0x6437c4
mov dword [esp], ecx
call fcn.006498e0
mov ecx, dword [esp + 4]
mov ebx, dword [esp + 8]
mov edx, dword [esp + 0x260]
mov dword [esp], edx
mov eax, dword [esp + 0x264]
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x268]
mov dword [esp + 8], ebp
lea esi, [0x6c5707]
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ebx
call fcn.00641a50
mov eax, dword [esp + 0x284]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
mov dword [eax + 0x28], edx
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x643829
mov dword [eax + 0x2c], ecx
jmp 0x643833
lea edi, [eax + 0x2c]
mov eax, ecx
call fcn.00463080
test ebx, ebx
jne 0x643aa0
mov eax, dword [esp + 0x284]
mov ecx, dword [eax + 0x2c]
lea ebx, [0x73b1cc]
cmp dword [eax + 0x28], ebx
je 0x643855
mov ecx, 0
je 0x643863
mov ecx, dword [esp + 0xc4]
jmp 0x643e30
mov dword [esp + 0xcc], ecx
mov eax, dword [esp + 0xc4]
test eax, eax
je 0x643887
mov edx, dword [eax + 0x28]
test edx, edx
je 0x643887
mov eax, dword [edx]
call eax
mov ecx, dword [esp + 0xcc]
mov dword [esp], ecx
mov eax, dword [esp + 0x264]
mov dword [esp + 4], eax
mov edx, dword [esp + 0x268]
mov dword [esp + 8], edx
call fcn.005b91d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test eax, eax
jne 0x6439ae
lea eax, [0x6b7580]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0x148], eax
mov ecx, dword [esp + 0xcc]
mov dword [esp], ecx
call fcn.005b9920
mov eax, dword [0x8e84e0]
test eax, eax
jne 0x643906
mov edi, dword [esp + 0x148]
lea esi, [esp + 4]
call fcn.0046374a
mov ecx, dword [esp + 0xc4]
test ecx, ecx
jmp 0x643945
lea edi, [esp + 0x1fc]
lea esi, [esp + 4]
call fcn.0046374a
lea eax, [0x6b7580]
mov dword [esp], eax
mov eax, dword [esp + 0x148]
mov dword [esp + 4], eax
lea ecx, [esp + 0x1fc]
mov dword [esp + 8], ecx
call fcn.00410e50
mov eax, dword [esp + 0xc4]
test eax, eax
mov ecx, eax
je 0x643978
mov edx, dword [ecx + 0x2c]
test edx, edx
je 0x643978
mov eax, dword [edx]
lea edi, [esp]
mov esi, dword [esp + 0x148]
call fcn.0046374a
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
call eax
mov ecx, dword [esp + 0xc4]
mov ebx, dword [esp + 0x284]
test byte [ebx], al
mov ebp, dword [0x8e84e0]
test ebp, ebp
jne 0x64399a
mov eax, dword [esp + 0x148]
mov dword [ebx + 0x30], eax
jmp 0x643e30
lea edi, [ebx + 0x30]
mov eax, dword [esp + 0x148]
call fcn.00463080
jmp 0x643e30
mov dword [esp + 0x124], ecx
mov dword [esp + 0xb8], edx
mov eax, dword [esp + 0x284]
mov ecx, dword [eax + 0x28]
mov dword [esp + 0xa8], ecx
test byte [ecx], al
mov eax, dword [eax + 0x2c]
mov dword [esp + 0x120], eax
lea edx, [0x697020]
mov dword [esp], edx
call fcn.0040b800
mov eax, dword [esp + 4]
lea ecx, [0x645770]
mov dword [eax], ecx
mov ecx, dword [esp + 0xa8]
mov dword [eax + 4], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x643a13
mov ecx, dword [esp + 0x120]
mov dword [eax + 8], ecx
jmp 0x643a26
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x120]
call fcn.00463080
mov eax, ecx
mov dword [esp], eax
call fcn.004424f0
mov eax, dword [esp + 0xc4]
test eax, eax
je 0x643a72
mov edx, dword [eax + 0x2c]
test edx, edx
je 0x643a72
mov ecx, dword [edx]
mov dword [esp + 0xa8], ecx
lea edi, [esp]
xor eax, eax
call fcn.00463309
mov ecx, dword [esp + 0x124]
mov dword [esp + 0x5c], ecx
mov ebx, dword [esp + 0xb8]
mov dword [esp + 0x60], ebx
mov ebp, dword [esp + 0xa8]
call ebp
mov dword [esp + 0x284], 0
mov eax, dword [esp + 0x124]
mov dword [esp + 0x288], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x28c], eax
add esp, 0x25c
ret
mov eax, dword [esp + 0x26c]
test eax, eax
je 0x643b25
mov dword [esp + 0x124], esi
mov dword [esp + 0xf0], ebp
lea eax, [0x6ad6a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0xc
lea ecx, [0x6c7d30]
mov dword [eax], ecx
mov dword [eax + 0xc], 3
lea ecx, [0x6c5707]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x124]
mov dword [eax + 0x20], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x643b0a
mov ecx, dword [esp + 0xf0]
mov dword [eax + 0x24], ecx
jmp 0x643b1d
lea edi, [eax + 0x24]
mov ecx, eax
mov eax, dword [esp + 0xf0]
call fcn.00463080
mov eax, ecx
lea ebx, [0x739648]
mov ebp, eax
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], ebx
mov dword [esp + 0x28c], ebp
add esp, 0x25c
ret
test ecx, ecx
jmp 0x643b68
test ecx, ecx
mov edx, dword [esp + 0x260]
jmp 0x643b68
test ecx, ecx
mov edx, dword [esp + 0x260]
jmp 0x643b68
test ecx, ecx
mov edx, dword [esp + 0x260]
jne 0x643b7a
mov ecx, dword [esp + 0x278]
mov ebx, dword [esp + 0x27c]
jmp 0x643b91
mov dword [esp], ecx
call fcn.006498e0
mov ecx, dword [esp + 4]
mov ebx, dword [esp + 8]
mov edx, dword [esp + 0x260]
mov dword [esp], edx
mov eax, dword [esp + 0x264]
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x268]
mov dword [esp + 8], ebp
lea esi, [0x6c5707]
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ebx
call fcn.00641520
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
test eax, eax
jne 0x64437c
mov ecx, dword [esp + 0x284]
mov dword [ecx + 0x28], ebx
mov ebx, dword [0x8e84e0]
test ebx, ebx
jne 0x643bfe
mov dword [ecx + 0x2c], edx
jmp 0x643c08
lea edi, [ecx + 0x2c]
mov eax, edx
call fcn.00463080
mov eax, dword [esp + 0x26c]
test eax, eax
je 0x643c1a
mov ecx, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x643c28
mov ecx, dword [esp + 0x270]
mov ebx, dword [esp + 0x274]
cmp ebx, 5
jne 0x643e29
cmp dword [ecx], 0x70747468
jne 0x643e29
cmp byte [ecx + 4], 0x73
jne 0x643e29
test eax, eax
jne 0x643c5b
mov eax, dword [esp + 0x278]
mov ecx, dword [esp + 0x27c]
jmp 0x643c6b
mov dword [esp], eax
call fcn.006498e0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.005859b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
test edx, edx
je 0x643d38
mov eax, dword [esp + 0x26c]
test eax, eax
je 0x643d18
mov dword [esp + 0xec], ebx
mov dword [esp + 0x124], ebp
lea eax, [0x6ad6a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0xc
lea ecx, [0x6c7d30]
mov dword [eax], ecx
mov dword [eax + 0xc], 3
lea ecx, [0x6c5707]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x124]
mov dword [eax + 0x20], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x643cfd
mov ecx, dword [esp + 0xec]
mov dword [eax + 0x24], ecx
jmp 0x643d10
lea edi, [eax + 0x24]
mov ecx, eax
mov eax, dword [esp + 0xec]
call fcn.00463080
mov eax, ecx
lea edx, [0x739648]
mov ebx, eax
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], edx
mov dword [esp + 0x28c], ebx
add esp, 0x25c
ret
mov edx, dword [esp + 0x284]
mov dword [esp], edx
mov edx, dword [esp + 0x264]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x268]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x14], eax
call fcn.00642e80
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
test eax, eax
je 0x643e29
mov ebx, dword [esp + 0x26c]
test ebx, ebx
je 0x643e09
mov dword [esp + 0xec], ecx
mov dword [esp + 0x124], edx
lea eax, [0x6ad6a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0xc
lea ecx, [0x6c7d30]
mov dword [eax], ecx
mov dword [eax + 0xc], 3
lea ecx, [0x6c5707]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x124]
mov dword [eax + 0x20], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x643dee
mov ecx, dword [esp + 0xec]
mov dword [eax + 0x24], ecx
jmp 0x643e01
lea edi, [eax + 0x24]
mov ecx, eax
mov eax, dword [esp + 0xec]
call fcn.00463080
mov eax, ecx
mov ecx, eax
lea eax, [0x739648]
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], eax
mov dword [esp + 0x28c], ecx
add esp, 0x25c
ret
mov ecx, dword [esp + 0xc4]
mov eax, dword [esp + 0x26c]
test eax, eax
je 0x644375
mov ebx, dword [eax]
cmp dword [eax + 4], 6
jne 0x6440fa
cmp dword [ebx], 0x6b636f73
jne 0x6440fa
cmp word [ebx + 4], 0x3573
jne 0x6440fa
mov eax, dword [esp + 0x284]
mov ecx, dword [eax + 0x28]
mov dword [esp + 0x9c], ecx
mov eax, dword [eax + 0x2c]
mov dword [esp + 0x104], eax
mov edx, dword [ecx + 0x1c]
mov dword [esp], eax
call edx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0xa0], ecx
lea edi, [esp + 0x178]
mov edx, eax
xor eax, eax
call fcn.00463316
lea eax, [0x6c5707]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], 3
mov dword [esp + 0x184], edx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x188], ecx
mov dword [esp + 0x178], 1
mov ecx, dword [esp + 0x26c]
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je 0x64402d
mov dword [esp + 0xc0], ecx
mov eax, dword [ecx]
mov dword [esp + 0xb4], eax
mov edx, dword [ecx + 4]
mov dword [esp + 0x68], edx
lea ebx, [0x69ee80]
mov dword [esp], ebx
call fcn.0040b800
mov edi, dword [esp + 4]
mov dword [edi + 0xc], 0
mov eax, dword [0x8e84e0]
lea ecx, [edi + 8]
test eax, eax
jne 0x643f45
mov dword [edi + 8], 0
jmp 0x643f52
xor eax, eax
mov edx, edi
mov edi, ecx
call fcn.00463080
mov edi, edx
mov edx, dword [esp + 0x68]
mov dword [edi + 4], edx
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x643f6e
mov edx, dword [esp + 0xb4]
mov dword [edi], edx
jmp 0x643f7a
mov eax, dword [esp + 0xb4]
call fcn.00463080
mov dword [esp + 0x108], edi
mov edx, dword [esp + 0xc0]
mov eax, dword [edx + 8]
mov edx, dword [edx + 0xc]
mov dword [edi + 0xc], edx
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x643fa0
mov dword [edi + 8], eax
jmp 0x643fa7
mov edi, ecx
call fcn.00463080
lea eax, [0x6899c0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 2
mov dword [esp + 0x194], 2
mov dword [esp + 0x198], 2
mov dword [esp + 0x190], eax
lea eax, [0x6968a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
lea ecx, [0x651040]
mov dword [eax], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x64400d
mov ecx, dword [esp + 0x108]
mov dword [eax + 4], ecx
jmp 0x644020
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x108]
call fcn.00463080
mov eax, ecx
mov dword [esp + 0x19c], eax
lea eax, [0x6c5707]
mov ecx, dword [esp + 0x278]
mov edx, dword [esp + 0x27c]
lea ebx, [esp + 0x178]
mov dword [esp], ebx
mov ebx, dword [esp + 0x264]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x268]
mov dword [esp + 8], ebp
mov esi, dword [esp + 0x9c]
mov dword [esp + 0xc], esi
mov edi, dword [esp + 0x104]
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 3
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
call fcn.00637490
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
test eax, eax
jne 0x6440a8
mov ecx, dword [esp + 0xc4]
xor eax, eax
jmp 0x644421
mov dword [esp + 0xe8], edx
mov dword [esp + 0x124], ecx
mov eax, dword [esp + 0x9c]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x104]
mov dword [esp], ecx
call eax
mov dword [esp + 0x284], 0
mov eax, dword [esp + 0x124]
mov dword [esp + 0x288], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x28c], eax
add esp, 0x25c
ret
mov ebx, dword [esp + 0x270]
mov ebp, dword [esp + 0x274]
cmp ebp, 4
jne 0x6441d6
cmp dword [ebx], 0x70747468
jne 0x6441d6
mov eax, dword [esp + 0x284]
mov byte [eax + 0x50], 1
lea eax, [esp + 0x26c]
mov dword [esp], eax
call fcn.0063f9e0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test eax, eax
je 0x6441c8
mov dword [esp + 0xd8], ecx
mov dword [esp + 0x84], eax
lea eax, [0x697500]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
lea ecx, [0x645680]
mov dword [eax], ecx
mov ecx, dword [esp + 0x84]
mov dword [eax + 8], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x64418f
mov ecx, dword [esp + 0xd8]
mov dword [eax + 4], ecx
jmp 0x6441a2
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xd8]
call fcn.00463080
mov eax, ecx
mov ecx, dword [esp + 0x284]
test byte [ecx], al
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x6441bd
mov dword [ecx + 0x9c], eax
jmp 0x6441c8
lea edi, [ecx + 0x9c]
call fcn.00463080
mov ecx, dword [esp + 0xc4]
xor eax, eax
jmp 0x644421
cmp ebp, 5
jne 0x64436e
cmp dword [ebx], 0x70747468
jne 0x64436e
cmp byte [ebx + 4], 0x73
jne 0x64436e
mov ebx, dword [esp + 0x284]
mov ebp, dword [ebx + 0x28]
mov dword [esp + 0x98], ebp
mov ebx, dword [ebx + 0x2c]
mov dword [esp + 0x100], ebx
mov esi, dword [esp + 0x260]
mov edx, dword [esi + 0x98]
test edx, edx
jne 0x644229
mov eax, dword [esi + 0x94]
jmp 0x644290
mov ecx, dword [edx]
mov ebx, dword [esp + 0x278]
mov ebp, dword [esp + 0x27c]
mov esi, dword [esp + 0x264]
mov dword [esp], esi
mov edi, dword [esp + 0x268]
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
call ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
test ecx, ecx
jne 0x64431c
mov ecx, dword [esp + 0xc4]
mov ebx, dword [esp + 0x100]
mov ebp, dword [esp + 0x98]
mov esi, dword [esp + 0x260]
test eax, eax
jne 0x64429c
call fcn.0040c2e0
mov eax, dword [esp]
mov dword [esp + 0xe0], eax
lea ecx, [esp + 0x26c]
mov dword [esp], ecx
call fcn.0063f9e0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test eax, eax
je 0x644310
mov dword [esp + 0xd4], ecx
mov dword [esp + 0x80], eax
mov edx, dword [esp + 0xe0]
test edx, edx
je 0x644309
lea edi, [esp + 0x1cc]
xor eax, eax
call fcn.00463314
lea ecx, [0x6baa20]
mov dword [esp], ecx
mov dword [esp + 4], edx
lea ebx, [esp + 0x1cc]
mov dword [esp + 8], ebx
call fcn.0040d490
xor eax, eax
jmp 0x6450db
xor edx, edx
jmp 0x644fcb
mov eax, dword [esp + 0xe0]
jmp 0x644a47
mov dword [esp + 0xe4], ebp
mov dword [esp + 0x124], ebx
mov eax, dword [esp + 0x98]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x100]
mov dword [esp], ecx
call eax
mov dword [esp + 0x284], 0
mov eax, dword [esp + 0x124]
mov dword [esp + 0x288], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x28c], eax
add esp, 0x25c
ret
xor eax, eax
jmp 0x644421
xor eax, eax
jmp 0x644421
mov edx, dword [esp + 0x26c]
test edx, edx
je 0x644401
mov dword [esp + 0x124], ebp
mov dword [esp + 0xec], ecx
lea eax, [0x6ad6a0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0xc
lea ecx, [0x6c7d30]
mov dword [eax], ecx
mov dword [eax + 0xc], 3
lea ecx, [0x6c5707]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x124]
mov dword [eax + 0x20], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x6443e6
mov ecx, dword [esp + 0xec]
mov dword [eax + 0x24], ecx
jmp 0x6443f9
lea edi, [eax + 0x24]
mov ecx, eax
mov eax, dword [esp + 0xec]
call fcn.00463080
mov eax, ecx
mov ecx, eax
lea eax, [0x739648]
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], eax
mov dword [esp + 0x28c], ecx
add esp, 0x25c
ret
mov byte [esp + 0x66], al
mov edx, dword [esp + 0x26c]
test edx, edx
je 0x6444ff
mov edx, dword [esp + 0x270]
cmp dword [esp + 0x274], 5
jne 0x6444ff
cmp dword [edx], 0x70747468
jne 0x6444ff
cmp byte [edx + 4], 0x73
jne 0x6444ff
lea eax, [esp + 0x26c]
mov dword [esp], eax
call fcn.00645a00
mov eax, dword [esp + 0x284]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0x264]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x268]
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x14], eax
call fcn.00642e80
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test eax, eax
je 0x6444fa
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], ecx
mov dword [esp + 0x28c], edx
movzx eax, byte [esp + 0x66]
test al, 1
je 0x6444f3
and eax, 0xfffffffe
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x258]
mov eax, dword [edx]
call eax
add esp, 0x25c
ret
movzx eax, byte [esp + 0x66]
mov ecx, dword [esp + 0x284]
mov ecx, dword [ecx + 0x30]
test ecx, ecx
je 0x644717
movzx edx, byte [ecx + 0x10]
test dl, dl
je 0x644717
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx + 8]
test edx, edx
je 0x644717
mov eax, dword [esp + 0x260]
mov ebx, dword [eax + 0x90]
lea ebp, [0x690360]
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
call fcn.00410060
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
movzx eax, byte [esp + 0x14]
test al, al
je 0x644712
mov eax, dword [esp + 0x284]
mov ecx, dword [eax + 0x28]
mov eax, dword [eax + 0x2c]
lea ebx, [0x73b1cc]
cmp ecx, ebx
jne 0x644a2b
mov ecx, dword [edx]
mov ebx, dword [esp + 0x278]
mov ebp, dword [esp + 0x27c]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call ecx
mov eax, dword [esp + 0xc]
mov dword [esp + 0x124], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10c], ecx
lea ebx, [0x696480]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004093f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
test eax, eax
je 0x644621
mov eax, dword [eax + 0x10]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], eax
mov dword [esp + 0x28c], ecx
movzx eax, byte [esp + 0x66]
test al, 1
je 0x64461a
and eax, 0xfffffffe
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x258]
mov eax, dword [edx]
call eax
add esp, 0x25c
ret
lea eax, [0x6bcb80]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x644649
mov ecx, dword [esp + 0x260]
mov dword [eax + 8], ecx
jmp 0x64465c
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x260]
call fcn.00463080
mov eax, ecx
mov ecx, dword [esp + 0x284]
test byte [ecx], al
mov ebx, dword [0x8e84e0]
lea edi, [eax + 0xc]
lea esi, [ecx + 0xc]
test ebx, ebx
jne 0x64467c
call fcn.004637ea
jmp 0x6446a0
mov dword [esp + 0x128], eax
lea eax, [0x6ae2a0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call fcn.00410e50
mov eax, dword [esp + 0x128]
mov ecx, dword [esp + 0x124]
mov dword [eax], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x6446bf
mov ecx, dword [esp + 0x10c]
mov dword [eax + 4], ecx
jmp 0x6446d2
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x10c]
call fcn.00463080
mov eax, ecx
mov dword [esp + 0x284], eax
mov dword [esp + 0x288], 0
mov dword [esp + 0x28c], 0
movzx eax, byte [esp + 0x66]
test al, 1
je 0x64470b
and eax, 0xfffffffe
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x258]
mov eax, dword [edx]
call eax
add esp, 0x25c
ret
movzx eax, byte [esp + 0x66]
mov ecx, dword [esp + 0x284]
mov edx, dword [esp + 0x260]
mov ebx, dword [edx + 0xa8]
test ebx, ebx
jg 0x644734
mov ebx, 0x1000
mov dword [esp + 0x128], ecx
cmp ebx, 0x10
jge 0x644745
mov ebx, 0x10
mov dword [esp + 0x7c], ebx
lea eax, [0x6b1cc0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0xbc], eax
lea ecx, [0x68e6c0]
mov dword [esp], ecx
mov edx, dword [esp + 0x7c]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.0044b730
mov eax, dword [esp + 0xc]
mov dword [esp + 0x11c], eax
lea edi, [esp + 0x1a0]
xor eax, eax
call fcn.00463315
mov eax, dword [esp + 0x11c]
mov dword [esp + 0x1a0], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], eax
lea eax, [0x739724]
mov dword [esp + 0x1ac], eax
mov eax, dword [esp + 0x128]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1c4], 0xffffffff
mov dword [esp + 0x1c8], 0xffffffff
mov eax, dword [0x8e84e0]
test eax, eax
jne 0x644805
mov edi, dword [esp + 0xbc]
lea esi, [esp + 0x1a0]
call fcn.004637c2
jmp 0x644829
lea eax, [0x6b1cc0]
mov dword [esp], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 4], eax
lea ecx, [esp + 0x1a0]
mov dword [esp + 8], ecx
call fcn.00410e50
mov ecx, dword [esp + 0x284]
test byte [ecx], al
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x644848
mov eax, dword [esp + 0xbc]
mov dword [ecx + 0x34], eax
jmp 0x644857
lea edi, [ecx + 0x34]
mov eax, dword [esp + 0xbc]
call fcn.00463080
mov eax, dword [esp + 0x284]
mov ecx, dword [esp + 0x260]
mov ecx, dword [ecx + 0xa4]
test ecx, ecx
jg 0x644874
mov ecx, 0x1000
mov dword [esp + 0x128], eax
test ecx, ecx
jg 0x644884
mov ecx, 0x1000
mov dword [esp + 0x78], ecx
lea eax, [0x68e6c0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.0044b730
mov eax, dword [esp + 0xc]
mov dword [esp + 0x11c], eax
lea ecx, [0x6a8760]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x78]
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x6448db
mov ecx, dword [esp + 0x11c]
mov dword [eax + 8], ecx
jmp 0x6448ee
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x11c]
call fcn.00463080
mov eax, ecx
lea ecx, [0x739c60]
mov dword [eax + 0x18], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x64490d
mov ecx, dword [esp + 0x128]
mov dword [eax + 0x1c], ecx
jmp 0x644920
lea edi, [eax + 0x1c]
mov ecx, eax
mov eax, dword [esp + 0x128]
call fcn.00463080
mov eax, ecx
mov ecx, dword [esp + 0x284]
test byte [ecx], al
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x644938
mov dword [ecx + 0x38], eax
jmp 0x644940
lea edi, [ecx + 0x38]
call fcn.00463080
mov eax, dword [esp + 0x284]
mov dword [esp + 0x128], eax
lea ecx, [0x697080]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
lea ecx, [0x645380]
mov dword [eax], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x64497e
mov ecx, dword [esp + 0x128]
mov dword [eax + 4], ecx
jmp 0x644991
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x128]
call fcn.00463080
mov eax, ecx
mov dword [esp], eax
call fcn.004424f0
mov eax, dword [esp + 0x284]
mov dword [esp + 0x128], eax
lea ecx, [0x6970e0]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
lea ecx, [0x645340]
mov dword [eax], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x6449d7
mov ecx, dword [esp + 0x128]
mov dword [eax + 4], ecx
jmp 0x6449ea
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x128]
call fcn.00463080
mov eax, ecx
mov dword [esp], eax
call fcn.004424f0
mov dword [esp + 0x288], 0
mov dword [esp + 0x28c], 0
movzx eax, byte [esp + 0x66]
test al, 1
je 0x644a24
and eax, 0xfffffffe
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x258]
mov eax, dword [edx]
call eax
add esp, 0x25c
ret
mov dword [esp], ecx
lea eax, [0x6c3240]
mov dword [esp + 4], eax
lea eax, [0x6ae220]
mov dword [esp + 8], eax
call fcn.00408ed0
mov dword [esp + 0xe0], eax
lea ecx, [0x6bbe80]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0xf8], eax
mov dword [eax + 4], 7
lea ecx, [0x6c6034]
mov dword [eax], ecx
lea ecx, [0x6b6240]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x27c]
mov edx, dword [esp + 0x278]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x644ab2
mov dword [eax + 8], edx
mov ecx, dword [esp + 0xf8]
mov dword [ecx + 8], eax
jmp 0x644ad1
lea edi, [eax + 8]
mov ecx, eax
mov eax, edx
call fcn.00463080
mov edx, dword [esp + 0xf8]
lea edi, [edx + 8]
mov eax, ecx
call fcn.00463080
mov ecx, edx
mov eax, dword [esp + 0x278]
mov edx, dword [esp + 0x27c]
mov dword [ecx + 0x48], edx
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x644afb
mov dword [ecx + 0x44], eax
mov eax, dword [esp + 0xe0]
mov dword [ecx + 0x1c], eax
jmp 0x644b12
lea edi, [ecx + 0x44]
call fcn.00463080
lea edi, [ecx + 0x1c]
mov eax, dword [esp + 0xe0]
call fcn.00463080
mov eax, dword [esp + 0x264]
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0x268]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov dword [esp + 0x118], eax
test eax, eax
je 0x644b47
mov ecx, dword [esp + 0x264]
mov edx, dword [esp + 0x268]
jmp 0x644b89
mov eax, dword [esp + 0x264]
mov dword [esp], eax
mov ecx, dword [esp + 0x268]
mov dword [esp + 4], ecx
mov dword [esp + 0xc], 0xd
mov dword [esp + 8], 0xf8475800
call fcn.0056b090
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x258], eax
mov byte [esp + 0x67], 1
mov dword [esp + 0xfc], edx
mov dword [esp + 0x94], ecx
lea eax, [0x6874a0]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.004048e0
mov eax, dword [esp + 8]
mov dword [esp + 0xf4], eax
lea ecx, [0x6b3640]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0x140], eax
lea ecx, [0x695e20]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0x144], eax
mov dword [eax], 0
mov dword [eax + 4], 0
lea ecx, [0x6ac920]
mov dword [esp], ecx
call fcn.0040b800
mov eax, dword [esp + 4]
lea ecx, [0x6453c0]
mov dword [eax], ecx
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x644c31
mov ecx, dword [esp + 0xf4]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [eax + 8], edx
jmp 0x644c57
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xf4]
call fcn.00463080
lea edi, [ecx + 8]
mov edx, eax
mov eax, dword [esp + 0xf8]
call fcn.00463080
mov eax, ecx
mov ecx, edx
mov edx, dword [esp + 0x98]
mov dword [eax + 0xc], edx
mov ebx, dword [0x8e84e0]
test ebx, ebx
jne 0x644c8b
mov ebx, dword [esp + 0x100]
mov dword [eax + 0x10], ebx
mov ebp, dword [esp + 0x144]
mov dword [eax + 0x14], ebp
mov esi, dword [esp + 0x140]
mov dword [eax + 0x18], esi
jmp 0x644cbc
lea edi, [eax + 0x10]
mov ebx, eax
mov eax, dword [esp + 0x100]
call fcn.00463080
lea edi, [ebx + 0x14]
mov eax, dword [esp + 0x144]
call fcn.00463080
lea edi, [ebx + 0x18]
mov eax, dword [esp + 0x140]
call fcn.00463080
mov eax, ebx
mov dword [esp], eax
call fcn.004424f0
mov eax, dword [esp + 0x94]
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0xfc]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
mov dword [esp + 0x154], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 0x14c], eax
lea ecx, [esp + 0x14c]
mov dword [esp], ecx
lea ecx, [esp + 0xac]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
mov byte [esp + 0x14], 1
call fcn.00448530
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x118]
test ecx, ecx
setne cl
xor ecx, 1
mov byte [esp + 0x65], cl
test eax, eax
jne 0x644f44
mov eax, dword [esp + 0x144]
mov edx, dword [eax]
test edx, edx
jne 0x644ee6
mov eax, dword [esp + 0x140]
mov eax, dword [eax]
cmp dword [eax + 8], 0xc8
jne 0x644da9
mov ecx, dword [esp + 0xc4]
movzx eax, byte [esp + 0x65]
jmp 0x644421
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x738998]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
call fcn.004d6550
movzx eax, byte [esp + 0x20]
mov byte [esp + 0x64], al
mov ecx, dword [esp + 0x98]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0x18]
mov dword [esp + 0xc8], edx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x70], ebx
mov ebp, dword [esp + 0x100]
mov dword [esp], ebp
call ecx
movzx eax, byte [esp + 0x64]
test al, al
je 0x644e83
lea eax, [0x697fe0]
mov dword [esp], eax
call fcn.0040b800
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x70]
mov dword [edi + 4], eax
mov eax, dword [0x8e84e0]
test eax, eax
jne 0x644e35
mov eax, dword [esp + 0xc8]
mov dword [edi], eax
jmp 0x644e41
mov eax, dword [esp + 0xc8]
call fcn.00463080
mov dword [esp + 0x284], 0
lea eax, [0x7395a8]
mov dword [esp + 0x288], eax
mov dword [esp + 0x28c], edi
movzx eax, byte [esp + 0x65]
test al, 1
je 0x644e7c
and eax, 0xfffffffe
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x258]
mov eax, dword [edx]
call eax
add esp, 0x25c
ret
lea eax, [0x697fe0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x6caa61]
mov dword [eax], ecx
mov dword [esp + 0x284], 0
lea ecx, [0x7395a8]
mov dword [esp + 0x288], ecx
mov dword [esp + 0x28c], eax
movzx eax, byte [esp + 0x65]
test al, 1
je 0x644edf
and eax, 0xfffffffe
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x258]
mov eax, dword [edx]
call eax
add esp, 0x25c
ret
mov eax, dword [esp + 0x98]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x100]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 0x144]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], ecx
mov dword [esp + 0x28c], eax
movzx eax, byte [esp + 0x65]
test al, 1
je 0x644f3d
and eax, 0xfffffffe
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x258]
mov eax, dword [edx]
call eax
add esp, 0x25c
ret
mov eax, dword [esp + 0x98]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x100]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00405500
mov eax, dword [esp + 0x94]
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0xfc]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x284], 0
mov dword [esp + 0x288], eax
mov dword [esp + 0x28c], ecx
movzx eax, byte [esp + 0x65]
test al, 1
je 0x644fc4
and eax, 0xfffffffe
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x258]
mov eax, dword [edx]
call eax
add esp, 0x25c
ret
mov dword [esp + 0xe0], edx
nop
lea eax, [0x6ca425]
mov dword [esp], eax
mov dword [esp + 4], 0x13
call fcn.005f7b00
mov eax, dword [esp + 8]
mov dword [esp + 0x124], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xa4], ecx
lea edx, [0x689480]
mov dword [esp], edx
call fcn.0040b800
mov edi, dword [esp + 4]
mov dword [esp + 0x114], edi
mov eax, dword [esp + 0x80]
mov dword [edi + 4], eax
mov eax, dword [0x8e84e0]
test eax, eax
jne 0x645037
mov eax, dword [esp + 0xd4]
mov dword [edi], eax
jmp 0x645043
mov eax, dword [esp + 0xd4]
call fcn.00463080
lea eax, [0x6b2880]
mov dword [esp], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x124]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0xc], ecx
call fcn.004103c0
mov edi, dword [esp + 0x10]
mov dword [edi + 4], 1
mov dword [edi + 8], 1
mov eax, dword [0x8e84e0]
test eax, eax
jne 0x645099
mov eax, dword [esp + 0x114]
mov dword [edi], eax
jmp 0x6450a5
mov eax, dword [esp + 0x114]
call fcn.00463080
mov eax, dword [esp + 0xe0]
jmp 0x644a47
mov eax, dword [esp + 0x1d0]
mov eax, dword [eax + 4]
mov dword [esp + 0x6c], eax
lea ecx, [esp + 0x1cc]
mov dword [esp], ecx
call fcn.0040d6c0
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x88]
add eax, ecx
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x1cc]
test ecx, ecx
jne 0x6450b1
lea ecx, [0x68e4c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.0044b730
mov eax, dword [esp + 0xc]
mov dword [esp + 0x11c], eax
mov ecx, dword [esp + 0xe0]
mov edx, dword [ecx]
lea ebx, [0x6baa20]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], 0
call fcn.0040c360
mov eax, dword [esp + 0xc]
mov dword [esp + 0x110], eax
lea edi, [esp + 0x1cc]
xor eax, eax
call fcn.00463314
lea eax, [0x6baa20]
mov dword [esp], eax
mov ecx, dword [esp + 0xe0]
mov dword [esp + 4], ecx
lea ecx, [esp + 0x1cc]
mov dword [esp + 8], ecx
call fcn.0040d490
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x11c]
jmp 0x6451a3
mov dword [esp + 0x74], ebx
mov dword [esp + 0xd0], ecx
lea eax, [esp + 0x1cc]
mov dword [esp], eax
call fcn.0040d6c0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x1cc]
test edx, edx
je 0x645304
mov dword [esp + 0x74], eax
mov dword [esp + 0xd0], ecx
mov ebx, dword [esp + 0x1d0]
mov ebp, dword [ebx]
mov esi, dword [edx]
mov edx, dword [edx + 4]
mov ebx, dword [ebx + 4]
test ebp, ebp
je 0x6452a8
mov dword [esp + 0x90], edx
mov dword [esp + 0xdc], esi
lea edx, [0x68e4c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00410f60
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x74]
cmp ebx, edx
jb 0x645315
mov dword [esp + 0x8c], edx
lea eax, [0x6baa20]
mov dword [esp], eax
mov ecx, dword [esp + 0x110]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xdc]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x90]
mov dword [esp + 0xc], edx
call fcn.004103c0
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x8c]
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov ecx, dword [0x8e84e0]
test ecx, ecx
jne 0x645274
mov edx, dword [esp + 0xd0]
mov dword [edi], edx
mov ecx, dword [esp + 0x74]
cmp ecx, eax
jmp 0x645290
mov ecx, eax
mov eax, dword [esp + 0xd0]
call fcn.00463080
mov edx, dword [esp + 0x74]
cmp edx, ecx
mov ebx, eax
mov eax, ecx
mov ecx, edx
mov edx, ebx
jb 0x645310
sub ecx, eax
mov ebx, ecx
neg ecx
shl eax, 3
sar ecx, 0x1f
and eax, ecx
lea ecx, [edx + eax]
jmp 0x64517e
lea eax, [0x6baa20]
mov dword [esp], eax
mov ecx, dword [esp + 0x110]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
call fcn.004103c0
mov edi, dword [esp + 0x10]
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov eax, dword [0x8e84e0]
test eax, eax
jne 0x6452ed
mov dword [edi], 0
jmp 0x6452f4
xor eax, eax
call fcn.00463080
mov ebx, dword [esp + 0x74]
mov ecx, dword [esp + 0xd0]
jmp 0x64517e
mov edx, dword [esp + 0x110]
jmp 0x644fcb
call fcn.00463160
call fcn.004631a0
nop
call fcn.004363f0
add esp, 0x25c
ret
call fcn.00461c70
jmp fcn.006434d0