Function at 0x40bfd6
Capabilities:
Check http status code
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov dword [ebp - 4], 0
push 0xffffffffffffffff
push 0x12
push 0x1601a2c3
push 0x52010001
call fcn.00510c65
add esp, 0x10
test eax, eax
je 0x40c004
mov dword [ebp - 8], 0
push 0
push dword [ebp - 8]
call fcn.00403c39
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
push eax
mov ebx, dword [0x69e07c]
test ebx, ebx
je 0x40c02f
push ebx
call fcn.00510c41
add esp, 4
pop eax
mov dword [0x69e07c], eax
cmp dword [ebp + 8], 0
jne 0x40c047
push dword [ebp + 0xc]
call fcn.0040d9cc
cmp dword [ebp + 8], 0xb2
je 0x40c0b4
cmp dword [ebp + 8], 0x88
je 0x40c0b4
cmp dword [ebp + 8], 0xe0
je 0x40c0b4
cmp dword [ebp + 8], 0x3d
je 0x40c0b4
cmp dword [ebp + 8], 0x129
je 0x40c0b4
cmp dword [ebp + 8], 0x5f
je 0x40c0b4
cmp dword [ebp + 8], 0x6b
je 0x40c0b4
cmp dword [ebp + 8], 0x7a
je 0x40c0b4
cmp dword [ebp + 8], 0x34c
je 0x40c0b4
xor eax, eax
jmp 0x40c0b9
mov eax, 1
test eax, eax
je 0x40c389
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x40c0d6
mov eax, 0x5fcf33
push eax
push 1
mov ebx, 0x511160
call fcn.00510c4d
add esp, 0x10
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fsub qword [0x5fd4d5]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
call fcn.004019ea
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x40c123
mov eax, 0x5fcf33
push eax
push 2
mov ebx, 0x512a70
call fcn.00510c4d
add esp, 0x1c
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
lea eax, [ebp - 0x1c]
push eax
call fcn.00411c06
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x40c161
push ebx
call fcn.00510c41
add esp, 4
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40c175
push ebx
call fcn.00510c41
add esp, 4
pop eax
mov dword [ebp - 4], eax
cmp dword [ebp + 8], 0xe0
jne 0x40c2c2
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 4]
test eax, eax
jne 0x40c1a5
mov eax, 0x5fcf33
push eax
push 2
mov ebx, 0x512a30
call fcn.00510c4d
add esp, 0x1c
mov dword [ebp - 8], eax
mov eax, 0x5fd222
xor ecx, ecx
test eax, eax
je 0x40c1c9
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 8]
xor ebx, ebx
test eax, eax
je 0x40c1da
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40c1f1
dec eax
test ecx, ecx
je 0x40c1f1
call fcn.00403821
add esp, 0xc
test eax, eax
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40c211
push ebx
call fcn.00510c41
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x40c224
lea eax, [ebp - 4]
push eax
call fcn.00411f08
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 4]
test eax, eax
jne 0x40c243
mov eax, 0x5fcf33
push eax
push 2
mov ebx, 0x512a30
call fcn.00510c4d
add esp, 0x1c
mov dword [ebp - 8], eax
mov eax, 0x5fd4dd
xor ecx, ecx
test eax, eax
je 0x40c267
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 8]
xor ebx, ebx
test eax, eax
je 0x40c278
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40c28f
dec eax
test ecx, ecx
je 0x40c28f
call fcn.00403821
add esp, 0xc
test eax, eax
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40c2af
push ebx
call fcn.00510c41
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x40c2c2
lea eax, [ebp - 4]
push eax
call fcn.0041229f
cmp dword [ebp + 8], 0xb2
jne 0x40c2d8
lea eax, [ebp - 4]
push eax
call fcn.004129c8
cmp dword [ebp + 8], 0x88
jne 0x40c2ee
lea eax, [ebp - 4]
push eax
call fcn.00416d30
cmp dword [ebp + 8], 0x3d
jne 0x40c301
lea eax, [ebp - 4]
push eax
call fcn.00418253
cmp dword [ebp + 8], 0x7a
jne 0x40c314
lea eax, [ebp - 4]
push eax
call fcn.0041bb69
cmp dword [ebp + 8], 0x6b
jne 0x40c327
lea eax, [ebp - 4]
push eax
call fcn.0041c221
cmp dword [ebp + 8], 0x129
jne 0x40c33d
lea eax, [ebp - 4]
push eax
call fcn.0041c7a6
cmp dword [ebp + 8], 0x5f
jne 0x40c350
lea eax, [ebp - 4]
push eax
call fcn.0041ca47
push 0xffffffffffffffff
push 8
push 0x1601a93a
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x40c389
cmp dword [ebp + 8], 0x34c
jne 0x40c389
lea eax, [ebp - 4]
push eax
call fcn.0041f5ab
cmp dword [ebp + 8], 1
jne 0x40c39b
push dword [ebp + 0xc]
call fcn.0041f823
cmp dword [ebp + 8], 0xc8
je 0x40c3d0
cmp dword [ebp + 8], 0xca
je 0x40c3d0
cmp dword [ebp + 8], 0xc9
je 0x40c3d0
cmp dword [ebp + 8], 0x67
je 0x40c3d0
xor eax, eax
jmp 0x40c3d5
mov eax, 1
test eax, eax
je 0x40c3e8
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00410657
cmp dword [ebp + 8], 0xc
jne 0x40c3fa
push dword [ebp + 0xc]
call fcn.0041f9cf
cmp dword [ebp + 8], 0x14
jne 0x40c40c
push dword [ebp + 0xc]
call fcn.00420bba
cmp dword [ebp + 8], 0x19
jne 0x40c41e
push dword [ebp + 0xc]
call fcn.0042bd5d
cmp dword [ebp + 8], 0x1b
jne 0x40c430
push dword [ebp + 0xc]
call fcn.0042c306
cmp dword [ebp + 8], 0x1c
jne 0x40c442
push dword [ebp + 0xc]
call fcn.0042c3f9
cmp dword [ebp + 8], 0x1d
jne 0x40c454
push dword [ebp + 0xc]
call fcn.0042cc62
cmp dword [ebp + 8], 0x1e
jne 0x40c466
push dword [ebp + 0xc]
call fcn.004347ea
cmp dword [ebp + 8], 0x1f
jne 0x40c478
push dword [ebp + 0xc]
call fcn.00435580
cmp dword [ebp + 8], 0x24
jne 0x40c48a
push dword [ebp + 0xc]
call fcn.00435b43
cmp dword [ebp + 8], 0x25
jne 0x40c49c
push dword [ebp + 0xc]
call fcn.0043caec
cmp dword [ebp + 8], 0x27
jne 0x40c4ae
push dword [ebp + 0xc]
call fcn.0043e88f
cmp dword [ebp + 8], 0x28
jne 0x40c4c0
push dword [ebp + 0xc]
call fcn.0043ebb6
cmp dword [ebp + 8], 0x29
je 0x40c4db
cmp dword [ebp + 8], 0xff
je 0x40c4db
xor eax, eax
jmp 0x40c4e0
mov eax, 1
test eax, eax
je 0x40c557
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
push 0x5fd4e7
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x40c50f
mov eax, 0x5fcf33
push eax
push 3
mov ebx, 0x512c20
call fcn.00510c4d
add esp, 0x28
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xffffffff
jle 0x40c54c
push 0
push 0x12c
push 0xffffffffffffffff
push 8
push 0x16017fd4
push 0x52010001
call fcn.00510c6b
add esp, 0x18
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00441e30
cmp dword [ebp + 8], 0x2a
jne 0x40c59a
mov dword [ebp - 8], 0
push 0
push dword [ebp - 8]
call fcn.00403c39
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
push eax
mov ebx, dword [0x69e14c]
test ebx, ebx
je 0x40c58c
push ebx
call fcn.00510c41
add esp, 4
pop eax
mov dword [0x69e14c], eax
push dword [ebp + 0xc]
call fcn.0044e699
cmp dword [ebp + 8], 0x2b
jne 0x40c5ac
push dword [ebp + 0xc]
call fcn.0044f0e8
cmp dword [ebp + 8], 0x2c
jne 0x40c5be
push dword [ebp + 0xc]
call fcn.0044f220
cmp dword [ebp + 8], 0x2e
jne 0x40c71a
mov ebx, dword [0x69e074]
call fcn.004011ad
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jle 0x40c6fd
mov ebx, dword [0x69e074]
call fcn.004011c6
mov eax, 0
cmp eax, ecx
jl 0x40c60b
push 0x1459
push 0x401019c
push 1
call fcn.00510c47
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 8], ebx
mov ebx, dword [0x69e070]
add ebx, 0xc
mov dword [ebp - 0xc], ebx
push 0x80000301
push 0
mov ebx, dword [ebp - 0xc]
push dword [ebx]
push 1
mov ebx, 0x511df0
call fcn.00510c4d
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x5126c0
call fcn.00510c4d
add esp, 0x10
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0040bdf2
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40c67b
push ebx
call fcn.00510c41
add esp, 4
mov eax, dword [ebp - 0x18]
xor ecx, ecx
test eax, eax
je 0x40c687
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp - 8]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x40c69a
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40c6b1
dec eax
test ecx, ecx
je 0x40c6b1
call fcn.00403821
add esp, 0xc
test eax, eax
mov eax, 0
sete al
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40c6d1
push ebx
call fcn.00510c41
add esp, 4
cmp dword [ebp - 0x1c], 0
je 0x40c6f8
push 0
push 0x190
push 0xffffffffffffffff
push 8
push 0x16013727
push 0x52010001
call fcn.00510c6b
add esp, 0x18
jmp 0x40c71a
push 0
push 0x190
push 0xffffffffffffffff
push 8
push 0x16013727
push 0x52010001
call fcn.00510c6b
add esp, 0x18
cmp dword [ebp + 8], 0x2f
jne 0x40c741
push 0
push 0x12c
push 0xffffffffffffffff
push 8
push 0x16017fd4
push 0x52010001
call fcn.00510c6b
add esp, 0x18
cmp dword [ebp + 8], 0x39
jne 0x40c753
push dword [ebp + 0xc]
call fcn.0044faf4
cmp dword [ebp + 8], 0x3a
jne 0x40c765
push dword [ebp + 0xc]
call fcn.00451304
cmp dword [ebp + 8], 0x4b
jne 0x40c777
push dword [ebp + 0xc]
call fcn.00451b31
cmp dword [ebp + 8], 0x3e
jne 0x40c789
push dword [ebp + 0xc]
call fcn.0045338b
cmp dword [ebp + 8], 0x3f
jne 0x40c79b
push dword [ebp + 0xc]
call fcn.00454056
cmp dword [ebp + 8], 0x43
je 0x40c7b3
cmp dword [ebp + 8], 0x46
je 0x40c7b3
xor eax, eax
jmp 0x40c7b8
mov eax, 1
test eax, eax
je 0x40c7cb
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00454311
cmp dword [ebp + 8], 0x44
jne 0x40c7dd
push dword [ebp + 0xc]
call fcn.00455654
cmp dword [ebp + 8], 0x45
jne 0x40c7ef
push dword [ebp + 0xc]
call fcn.0045576c
cmp dword [ebp + 8], 0x47
jne 0x40c801
push dword [ebp + 0xc]
call fcn.00456194
cmp dword [ebp + 8], 0x48
jne 0x40c813
push dword [ebp + 0xc]
call fcn.004563df
cmp dword [ebp + 8], 0x4c
jne 0x40c825
push dword [ebp + 0xc]
call fcn.00456ee9
cmp dword [ebp + 8], 0x4f
jne 0x40c837
push dword [ebp + 0xc]
call fcn.004596df
cmp dword [ebp + 8], 0x51
jne 0x40c849
push dword [ebp + 0xc]
call fcn.00459d03
cmp dword [ebp + 8], 0x5b
jne 0x40c85b
push dword [ebp + 0xc]
call fcn.0045a3f6
cmp dword [ebp + 8], 0xa2
jne 0x40c870
push dword [ebp + 0xc]
call fcn.0045b630
cmp dword [ebp + 8], 0xa3
jne 0x40c885
push dword [ebp + 0xc]
call fcn.0045c3dd
cmp dword [ebp + 8], 0x52
jne 0x40cbca
push 0x80000301
push 0
push 4
push 0x80000301
push 0
push 5
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x40c8bc
mov eax, 0x5fcf33
push eax
push 3
mov ebx, 0x512ab0
call fcn.00510c4d
add esp, 0x28
mov dword [ebp - 8], eax
mov ebx, dword [0x69e070]
add ebx, 8
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebp - 0xc]
mov eax, dword [ebx]
xor ecx, ecx
test eax, eax
je 0x40c8ec
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 8]
xor ebx, ebx
test eax, eax
je 0x40c8fd
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40c914
dec eax
test ecx, ecx
je 0x40c914
call fcn.00403821
add esp, 0xc
test eax, eax
mov eax, 0
sete al
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40c934
push ebx
call fcn.00510c41
add esp, 4
cmp dword [ebp - 0x10], 0
je 0x40cbca
mov ebx, dword [0x69e070]
add ebx, 4
mov dword [ebp - 8], ebx
mov dword [ebp - 0xc], 0
push 0
push dword [ebp - 0xc]
push 1
push 1
push 1
push 2
push 1
push 0xb
push dword [ebp + 0xc]
call fcn.00440fd2
mov ebx, dword [ebp - 8]
mov dword [ebx], eax
mov ebx, dword [0x69e070]
add ebx, 4
mov dword [ebp - 8], ebx
push 0x80000301
push 0
mov ebx, dword [ebp - 8]
push dword [ebx]
push 1
mov ebx, 0x512fa0
call fcn.00510c4d
add esp, 0x10
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], 0
push 0
lea eax, [ebp - 0x10]
push eax
mov dword [ebp - 0x14], 0
push 0
lea eax, [ebp - 0x14]
push eax
mov dword [ebp - 0x18], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x1c], 0
push 0
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x20], 0
push 0
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x24], 0
push 0
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x28], 0
push 0
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x2c], 0
push 0
lea eax, [ebp - 0x2c]
push eax
mov dword [ebp - 0x30], 0
push 0
lea eax, [ebp - 0x30]
push eax
push 1
lea eax, [ebp - 0xc]
push eax
mov dword [ebp - 0x34], 0
push 0
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x38], 0
push 0
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x3c], 0
push 0
lea eax, [ebp - 0x3c]
push eax
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
mov dword [ebp - 0x44], 0
push 0
lea eax, [ebp - 0x44]
push eax
mov dword [ebp - 0x48], 0
push 0
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 0x4c], 0
push 0
lea eax, [ebp - 0x4c]
push eax
mov dword [ebp - 0x50], 0
push 0
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], 0
push 0
lea eax, [ebp - 0x54]
push eax
call fcn.00421866
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x40caaa
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x40caba
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40caca
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40cada
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x40caea
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40cafa
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40cb0a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40cb1a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40cb2a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40cb3a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40cb4a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40cb5a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40cb6a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x40cb7a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40cb8a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x40cb9a
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40cbaa
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40cbba
push ebx
call fcn.00510c41
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40cbca
push ebx
call fcn.00510c41
add esp, 4
cmp dword [ebp + 8], 0x53
je 0x40cbe5
cmp dword [ebp + 8], 0xc0
je 0x40cbe5
xor eax, eax
jmp 0x40cbea
mov eax, 1
test eax, eax
je 0x40cd8a
cmp dword [ebp + 8], 0x53
jne 0x40ccc2
push 0x80000301
push 0
push 8
push 0x80000301
push 0
push 9
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x40cc29
mov eax, 0x5fcf33
push eax
push 3
mov ebx, 0x512ab0
call fcn.00510c4d
add esp, 0x28
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00417eef
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40cc5b
push ebx
call fcn.00510c41
add esp, 4
lea eax, [ebp - 0xc]
push eax
call fcn.00420835
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], edx
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40cc7a
push ebx
call fcn.00510c41
add esp, 4
push 0
mov ebx, 0x514740
call fcn.00510c4d
add esp, 4
mov dword [ebp - 0x18], eax
fild qword [ebp - 0x14]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x28]
fsub qword [ebp - 0x28]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
call fcn.004019ea
mov dword [0x69e150], eax
mov dword [0x69e154], edx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0045ca34
cmp dword [ebp + 8], 0xc0
jne 0x40cd8a
push 0x80000301
push 0
push 8
push 0x80000301
push 0
push 5
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x40ccfc
mov eax, 0x5fcf33
push eax
push 3
mov ebx, 0x512ab0
call fcn.00510c4d
add esp, 0x28
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00417eef
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40cd2e
push ebx
call fcn.00510c41
add esp, 4
lea eax, [ebp - 0xc]
push eax
call fcn.00420835
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], edx
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40cd4d
push ebx
call fcn.00510c41
add esp, 4
push 0
mov ebx, 0x514740
call fcn.00510c4d
add esp, 4
mov dword [ebp - 0x18], eax
fild qword [ebp - 0x14]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x28]
fsub qword [ebp - 0x28]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
call fcn.004019ea
mov dword [0x69e150], eax
mov dword [0x69e154], edx
cmp dword [ebp + 8], 0x55
jne 0x40cd9c
push dword [ebp + 0xc]
call fcn.0045ce15
cmp dword [ebp + 8], 0x5c
jne 0x40cdae
push dword [ebp + 0xc]
call fcn.0045d139
cmp dword [ebp + 8], 0x5d
jne 0x40cdc0
push dword [ebp + 0xc]
call fcn.0045db48
cmp dword [ebp + 8], 0x61
je 0x40cdec
cmp dword [ebp + 8], 0x62
je 0x40cdec
cmp dword [ebp + 8], 0x63
je 0x40cdec
cmp dword [ebp + 8], 0x65
je 0x40cdec
xor eax, eax
jmp 0x40cdf1
mov eax, 1
test eax, eax
je 0x40ce04
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0045e5c5
cmp dword [ebp + 8], 0x6a
jne 0x40ce16
push dword [ebp + 0xc]
call fcn.0045f0a3
cmp dword [ebp + 8], 0xb5
jne 0x40ce2b
push dword [ebp + 0xc]
call fcn.0045f94e
cmp dword [ebp + 8], 0xb8
jne 0x40ce40
push dword [ebp + 0xc]
call fcn.00460917
cmp dword [ebp + 8], 0xb9
je 0x40ce5e
cmp dword [ebp + 8], 0xba
je 0x40ce5e
xor eax, eax
jmp 0x40ce63
mov eax, 1
test eax, eax
je 0x40ce76
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00460bdc
cmp dword [ebp + 8], 0xbc
jne 0x40ce8b
push dword [ebp + 0xc]
call fcn.00460fc4
cmp dword [ebp + 8], 0xbe
jne 0x40d49f
mov ecx, 0
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00510c3b
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
mov dword [edi], 0
add edi, 4
mov ebx, dword [0x69e074]
call fcn.004011c6
pop edx
test ecx, ecx
je 0x40cf6a
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40ceef
push ebx
call fcn.00510c41
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40cf03
push ebx
call fcn.00510c41
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40cf17
push ebx
call fcn.00510c41
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40cf2b
push ebx
call fcn.00510c41
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40cf3f
push ebx
call fcn.00510c41
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40cf53
push ebx
call fcn.00510c41
add esp, 4
pop ebx
call fcn.00510c41
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40ceda
pop edx
pop edi
test edx, edx
je 0x40cf9c
mov ebx, edi
push edx
push ebx
push 0x20
call fcn.00510c3b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x40cf74
push dword [0x69e074]
call fcn.00510c41
add esp, 4
pop eax
mov dword [0x69e074], eax
push 0x20004
push 0x160157b8
push 0x52010001
push 1
mov eax, 1
mov ebx, 0x57f0e0
call fcn.00510c5f
add esp, 0x10
push 0
push 0
push 0xffffffffffffffff
push 8
push 0x16013727
push 0x52010001
call fcn.00510c6b
add esp, 0x18
push 0xffffffffffffffff
push 8
push 0x16019379
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x40d0ec
push 0xffffffffffffffff
push 8
push 0x1601937b
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x40d0ec
push 0xffffffffffffffff
push 8
push 0x16019380
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x40d0ec
push 0xffffffffffffffff
push 8
push 0x16019388
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x40d0ec
push 0xffffffffffffffff
push 8
push 0x16019390
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jne 0x40d0ec
push 0xffffffffffffffff
push 8
push 0x16019395
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
jne 0x40d0ec
push 0xffffffffffffffff
push 8
push 0x16019398
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
jne 0x40d0ec
xor eax, eax
jmp 0x40d0f1
mov eax, 1
test eax, eax
je 0x40d11f
mov eax, 0x5fd4fe
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00403924
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40d11a
push ebx
call fcn.00510c41
add esp, 4
jmp 0x40d9b6
push 0xffffffffffffffff
push 8
push 0x16014185
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x40d1a2
push 0
push 0
push 0xffffffffffffffff
push 8
push 0x16014185
push 0x52010001
call fcn.00510c6b
add esp, 0x18
mov eax, 0x5fd4fe
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00403924
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40d180
push ebx
call fcn.00510c41
add esp, 4
push 0
push 0x258
push 0xffffffffffffffff
push 8
push 0x16014185
push 0x52010001
call fcn.00510c6b
add esp, 0x18
jmp 0x40d9b6
push 0xffffffffffffffff
push 8
push 0x16014184
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x40d479
push 0xffffffffffffffff
push 0x12
push 0x160151d9
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 1
jne 0x40d453
mov ebx, dword [0x69e070]
add ebx, 0x54
mov dword [ebp - 8], ebx
push 0x5fd51e
mov ebx, dword [ebp - 8]
push dword [ebx]
call fcn.004011e6
add esp, 8
cmp eax, 0
jne 0x40d246
mov ebx, dword [0x69e070]
add ebx, 0x58
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0x10]
cmp dword [ebx], 0x48
jne 0x40d246
mov ebx, dword [0x69e070]
add ebx, 0x5c
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
cmp dword [ebx], 0x64
jne 0x40d246
mov eax, 1
jmp 0x40d24b
mov eax, 0
test eax, eax
je 0x40d272
mov eax, 0x5fd525
push eax
mov ebx, dword [0x69e158]
test ebx, ebx
je 0x40d26c
push ebx
call fcn.00510c41
add esp, 4
pop eax
mov dword [0x69e158], eax
mov ebx, dword [0x69e070]
add ebx, 0x54
mov dword [ebp - 8], ebx
push 0x5fd51e
mov ebx, dword [ebp - 8]
push dword [ebx]
call fcn.004011e6
add esp, 8
cmp eax, 0
jne 0x40d2d0
mov ebx, dword [0x69e070]
add ebx, 0x58
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0x10]
cmp dword [ebx], 0x55
jne 0x40d2d0
mov ebx, dword [0x69e070]
add ebx, 0x5c
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
cmp dword [ebx], 0x65
jne 0x40d2d0
mov eax, 1
jmp 0x40d2d5
mov eax, 0
test eax, eax
je 0x40d2fc
mov eax, 0x5fd52a
push eax
mov ebx, dword [0x69e158]
test ebx, ebx
je 0x40d2f6
push ebx
call fcn.00510c41
add esp, 4
pop eax
mov dword [0x69e158], eax
mov ebx, dword [0x69e070]
add ebx, 0x54
mov dword [ebp - 8], ebx
push 0x5fd51e
mov ebx, dword [ebp - 8]
push dword [ebx]
call fcn.004011e6
add esp, 8
cmp eax, 0
jne 0x40d35a
mov ebx, dword [0x69e070]
add ebx, 0x58
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0x10]
cmp dword [ebx], 0x58
jne 0x40d35a
mov ebx, dword [0x69e070]
add ebx, 0x5c
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
cmp dword [ebx], 0x78
jne 0x40d35a
mov eax, 1
jmp 0x40d35f
mov eax, 0
test eax, eax
je 0x40d386
mov eax, 0x5fd52f
push eax
mov ebx, dword [0x69e158]
test ebx, ebx
je 0x40d380
push ebx
call fcn.00510c41
add esp, 4
pop eax
mov dword [0x69e158], eax
mov ebx, dword [0x69e070]
add ebx, 0x54
mov dword [ebp - 8], ebx
push 0x5fd51e
mov ebx, dword [ebp - 8]
push dword [ebx]
call fcn.004011e6
add esp, 8
cmp eax, 0
jne 0x40d3e4
mov ebx, dword [0x69e070]
add ebx, 0x58
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0x10]
cmp dword [ebx], 0x13
jne 0x40d3e4
mov ebx, dword [0x69e070]
add ebx, 0x5c
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
cmp dword [ebx], 0x66
jne 0x40d3e4
mov eax, 1
jmp 0x40d3e9
mov eax, 0
test eax, eax
je 0x40d410
mov eax, 0x5fd534
push eax
mov ebx, dword [0x69e158]
test ebx, ebx
je 0x40d40a
push ebx
call fcn.00510c41
add esp, 4
pop eax
mov dword [0x69e158], eax
mov eax, 0x5fd539
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00403924
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40d431
push ebx
call fcn.00510c41
add esp, 4
mov dword [ebp - 8], 0
push 0
push dword [ebp - 8]
push 1
push 0x3e8
call fcn.00420a16
call fcn.00449185
jmp 0x40d474
mov eax, 0x5fd4fe
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00403924
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40d474
push ebx
call fcn.00510c41
add esp, 4
jmp 0x40d9b6
mov eax, 0x5fd539
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00403924
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40d49a
push ebx
call fcn.00510c41
add esp, 4
call fcn.00449185
cmp dword [ebp + 8], 0xd7
jne 0x40d4b4
push dword [ebp + 0xc]
call fcn.00461bcd
cmp dword [ebp + 8], 0xe2
jne 0x40d4c9
push dword [ebp + 0xc]
call fcn.00462529
cmp dword [ebp + 8], 0xf7
jne 0x40d4de
push dword [ebp + 0xc]
call fcn.0046268c
cmp dword [ebp + 8], 0xfb
jne 0x40d729
mov eax, 0x5fd559
xor ecx, ecx
test eax, eax
je 0x40d4f9
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x40d50c
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40d523
dec eax
test ecx, ecx
je 0x40d523
call fcn.00403821
add esp, 0xc
test eax, eax
jne 0x40d6da
push 0xffffffffffffffff
push 4
push 0x160157b3
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 8], eax
push 0x5fcf01
push dword [ebp - 8]
call fcn.004011e6
add esp, 8
cmp eax, 0
mov eax, 0
setne al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40d575
push ebx
call fcn.00510c41
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x40d5f2
mov ebx, dword [0x69e0e4]
call fcn.004011ad
mov dword [ebp - 0x10], eax
push 0xffffffffffffffff
push 4
push 0x160157b3
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 0x14], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40d5b9
mov eax, 0x5fcf01
push eax
push 1
mov ebx, 0x511df0
call fcn.00510c4d
add esp, 0x10
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40d5df
push ebx
call fcn.00510c41
add esp, 4
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x10], eax
jl 0x40d5f2
mov eax, 1
jmp 0x40d5f7
mov eax, 0
test eax, eax
je 0x40d6da
mov ebx, dword [0x69e0e4]
call fcn.004011c6
push ebx
push ecx
push 0xffffffffffffffff
push 4
push 0x160157b3
push 0x52010001
call fcn.00510c65
add esp, 0x10
mov dword [ebp - 8], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x40d638
mov eax, 0x5fcf01
push eax
push 1
mov ebx, 0x511df0
call fcn.00510c4d
add esp, 0x10
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40d65e
push ebx
call fcn.00510c41
add esp, 4
mov eax, dword [ebp - 0xc]
dec eax
jns 0x40d67b
push 0x3490
push 0x401019c
push 4
call fcn.00510c47
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40d698
push 0x3490
push 0x401019c
push 1
call fcn.00510c47
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x10], ebx
push 0x5fd575
mov ebx, dword [ebp - 0x10]
push dword [ebx]
push 0x5fd583
mov ecx, 3
call fcn.004038cd
add esp, 0xc
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.00403924
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40d6da
push ebx
call fcn.00510c41
add esp, 4
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
push 0x5fd596
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x40d701
mov eax, 0x5fcf33
push eax
push 3
mov ebx, 0x512c20
call fcn.00510c4d
add esp, 0x28
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xffffffff
jle 0x40d729
push dword [ebp + 0xc]
call fcn.0046290e
cmp dword [ebp + 8], 0x102
jne 0x40d73e
push dword [ebp + 0xc]
call fcn.00462a08
cmp dword [ebp + 8], 0x104
jne 0x40d753
push dword [ebp + 0xc]
call fcn.004634cc
cmp dword [ebp + 8], 0x109
jne 0x40d768
push dword [ebp + 0xc]
call fcn.00463870
cmp dword [ebp + 8], 0x10e
je 0x40d786
cmp dword [ebp + 8], 0xfb
je 0x40d786
xor eax, eax
jmp 0x40d78b
mov eax, 1
test eax, eax
je 0x40d79e
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00463aac
cmp dword [ebp + 8], 0x115
jne 0x40d7b3
push dword [ebp + 0xc]
call fcn.004641c3
cmp dword [ebp + 8], 0x116
jne 0x40d7c8
push dword [ebp + 0xc]
call fcn.00464515
cmp dword [ebp + 8], 0x124
jne 0x40d7dd
push dword [ebp + 0xc]
call fcn.004646a2
cmp dword [ebp + 8], 0x125
jne 0x40d7f2
push dword [ebp + 0xc]
call fcn.00464fcd
cmp dword [ebp + 8], 0x246
je 0x40d810
cmp dword [ebp + 8], 0x247
je 0x40d810
xor eax, eax
jmp 0x40d815
mov eax, 1
test eax, eax
je 0x40d828
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00465ae0
cmp dword [ebp + 8], 0x249
je 0x40d846
cmp dword [ebp + 8], 0x24a
je 0x40d846
xor eax, eax
jmp 0x40d84b
mov eax, 1
test eax, eax
je 0x40d85e
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004666cc
cmp dword [ebp + 8], 0x2a6
jne 0x40d873
push dword [ebp + 0xc]
call fcn.00466867
cmp dword [ebp + 8], 0x2b6
jne 0x40d888
push dword [ebp + 0xc]
call fcn.00466ab4
cmp dword [ebp + 8], 0x2fb
jne 0x40d89d
push dword [ebp + 0xc]
call fcn.00466dca
cmp dword [ebp + 8], 0x316
jne 0x40d8b2
push dword [ebp + 0xc]
call fcn.004672d6
cmp dword [ebp + 8], 0x317
jne 0x40d8c7
push dword [ebp + 0xc]
call fcn.00467537
cmp dword [ebp + 8], 0x337
jne 0x40d8dc
push dword [ebp + 0xc]
call fcn.00467892
cmp dword [ebp + 8], 0x3b6
jne 0x40d8f1
push dword [ebp + 0xc]
call fcn.00467ba4
cmp dword [ebp + 8], 0x3b9
jne 0x40d906
push dword [ebp + 0xc]
call fcn.00468103
cmp dword [ebp + 8], 0x3cf
jne 0x40d977
mov eax, 0x5fd5a6
xor ecx, ecx
test eax, eax
je 0x40d921
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x40d934
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40d94b
dec eax
test ecx, ecx
je 0x40d94b
call fcn.00403821
add esp, 0xc
test eax, eax
jne 0x40d977
mov eax, 0x5fd5b4
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00401a11
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40d977
push ebx
call fcn.00510c41
add esp, 4
cmp dword [ebp + 8], 0x3e8
jne 0x40d98c
push dword [ebp + 0xc]
call fcn.0046858f
cmp dword [ebp + 8], 0x3e9
jne 0x40d9a1
push dword [ebp + 0xc]
call fcn.0046892b
cmp dword [ebp + 8], 0x3eb
jne 0x40d9b6
push dword [ebp + 0xc]
call fcn.00468a57
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40d9c6
push ebx
call fcn.00510c41
add esp, 4
mov esp, ebp
pop ebp
ret 8