Function at 0x406a87
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 4], 0
cmp dword [ebp + 8], 0x45
jg 0x406aaf
cmp dword [ebp + 8], 1
jl 0x406aaf
xor eax, eax
jmp 0x406ab4
mov eax, 1
test eax, eax
je 0x406ac1
jmp 0x407c6b
call fcn.00407c81
cmp dword [ebp + 8], 1
jne 0x406b06
mov eax, 0x4a4db8
test eax, eax
je 0x406aec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406afd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 2
jne 0x406b46
mov eax, 0x4a8a96
test eax, eax
je 0x406b2c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406b3d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 3
jne 0x406b86
mov eax, 0x4aafdb
test eax, eax
je 0x406b6c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406b7d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 4
jne 0x406bc6
mov eax, 0x4afd2d
test eax, eax
je 0x406bac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406bbd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 5
jne 0x406c06
mov eax, 0x4b495e
test eax, eax
je 0x406bec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406bfd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 6
jne 0x406c46
mov eax, 0x4b8e89
test eax, eax
je 0x406c2c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406c3d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 7
jne 0x406c86
mov eax, 0x4c2f1b
test eax, eax
je 0x406c6c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406c7d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 8
jne 0x406cc6
mov eax, 0x4c6037
test eax, eax
je 0x406cac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406cbd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 9
jne 0x406d06
mov eax, 0x4caa31
test eax, eax
je 0x406cec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406cfd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0xa
jne 0x406d46
mov eax, 0x4cddc1
test eax, eax
je 0x406d2c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406d3d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0xb
jne 0x406d86
mov eax, 0x4d3d22
test eax, eax
je 0x406d6c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406d7d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0xc
jne 0x406dc6
mov eax, 0x4db53c
test eax, eax
je 0x406dac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406dbd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0xd
jne 0x406e06
mov eax, 0x4dd5c5
test eax, eax
je 0x406dec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406dfd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0xe
jne 0x406e46
mov eax, 0x4e3ccf
test eax, eax
je 0x406e2c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406e3d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0xf
jne 0x406e86
mov eax, 0x4e7a4c
test eax, eax
je 0x406e6c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406e7d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x10
jne 0x406ec6
mov eax, 0x4ea99d
test eax, eax
je 0x406eac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406ebd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x11
jne 0x406f06
mov eax, 0x4f05d8
test eax, eax
je 0x406eec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406efd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x12
jne 0x406f46
mov eax, 0x4f575f
test eax, eax
je 0x406f2c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406f3d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x13
jne 0x406f86
mov eax, 0x4f98d1
test eax, eax
je 0x406f6c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406f7d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x14
jne 0x406fc6
mov eax, 0x4fc675
test eax, eax
je 0x406fac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406fbd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x15
jne 0x407006
mov eax, 0x500cca
test eax, eax
je 0x406fec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406ffd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x16
jne 0x407046
mov eax, 0x503f24
test eax, eax
je 0x40702c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40703d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x17
jne 0x407086
mov eax, 0x50d181
test eax, eax
je 0x40706c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40707d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x18
jne 0x4070c6
mov eax, 0x514a77
test eax, eax
je 0x4070ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4070bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x19
jne 0x407106
mov eax, 0x51aef2
test eax, eax
je 0x4070ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4070fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x1a
jne 0x407146
mov eax, 0x5235d5
test eax, eax
je 0x40712c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40713d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x1b
jne 0x407186
mov eax, 0x52a6fe
test eax, eax
je 0x40716c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40717d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x1c
jne 0x4071c6
mov eax, 0x531a0d
test eax, eax
je 0x4071ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4071bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x1d
jne 0x407206
mov eax, 0x5356df
test eax, eax
je 0x4071ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4071fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x1e
jne 0x407246
mov eax, 0x53a7e9
test eax, eax
je 0x40722c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40723d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x1f
jne 0x407286
mov eax, 0x53f13e
test eax, eax
je 0x40726c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40727d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x20
jne 0x4072c6
mov eax, 0x546ae4
test eax, eax
je 0x4072ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4072bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x21
jne 0x407306
mov eax, 0x55173a
test eax, eax
je 0x4072ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4072fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x22
jne 0x407346
mov eax, 0x556675
test eax, eax
je 0x40732c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40733d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x23
jne 0x407386
mov eax, 0x55b525
test eax, eax
je 0x40736c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40737d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x24
jne 0x4073c6
mov eax, 0x4caa31
test eax, eax
je 0x4073ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4073bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x25
jne 0x407406
mov eax, 0x55f961
test eax, eax
je 0x4073ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4073fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x26
jne 0x407446
mov eax, 0x565503
test eax, eax
je 0x40742c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40743d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x27
jne 0x407486
mov eax, 0x56f52b
test eax, eax
je 0x40746c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40747d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x28
jne 0x4074c6
mov eax, 0x57a5c0
test eax, eax
je 0x4074ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4074bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x29
jne 0x407506
mov eax, 0x57cbc1
test eax, eax
je 0x4074ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4074fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x2a
jne 0x407546
mov eax, 0x581c11
test eax, eax
je 0x40752c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40753d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x2b
jne 0x407586
mov eax, 0x586ce6
test eax, eax
je 0x40756c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40757d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x2c
jne 0x4075c6
mov eax, 0x58b2f4
test eax, eax
je 0x4075ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4075bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x2d
jne 0x407606
mov eax, 0x58cebd
test eax, eax
je 0x4075ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4075fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x2e
jne 0x407646
mov eax, 0x58febb
test eax, eax
je 0x40762c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40763d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x2f
jne 0x407686
mov eax, 0x594bfd
test eax, eax
je 0x40766c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40767d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x30
jne 0x4076c6
mov eax, 0x5999ea
test eax, eax
je 0x4076ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4076bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x31
jne 0x407706
mov eax, 0x59f18a
test eax, eax
je 0x4076ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4076fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x32
jne 0x407746
mov eax, 0x5a18b3
test eax, eax
je 0x40772c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40773d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x33
jne 0x407786
mov eax, 0x5a6715
test eax, eax
je 0x40776c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40777d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x34
jne 0x4077c6
mov eax, 0x5ace97
test eax, eax
je 0x4077ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4077bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x35
jne 0x407806
mov eax, 0x5b2fdd
test eax, eax
je 0x4077ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4077fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x36
jne 0x407846
mov eax, 0x5b43c5
test eax, eax
je 0x40782c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40783d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x37
jne 0x407886
mov eax, 0x5b6ba6
test eax, eax
je 0x40786c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40787d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x38
jne 0x4078c6
mov eax, 0x5c237a
test eax, eax
je 0x4078ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4078bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x39
jne 0x407906
mov eax, 0x5c8b0c
test eax, eax
je 0x4078ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4078fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x3a
jne 0x407946
mov eax, 0x5cac3e
test eax, eax
je 0x40792c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40793d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x3b
jne 0x407986
mov eax, 0x5cd6ff
test eax, eax
je 0x40796c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40797d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x3c
jne 0x4079c6
mov eax, 0x5d1571
test eax, eax
je 0x4079ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4079bd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x3d
jne 0x407a06
mov eax, 0x5d40ea
test eax, eax
je 0x4079ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4079fd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x3e
jne 0x407a46
mov eax, 0x5d7cf8
test eax, eax
je 0x407a2c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407a3d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x3f
jne 0x407a86
mov eax, 0x5dbda7
test eax, eax
je 0x407a6c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407a7d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x40
jne 0x407ac6
mov eax, 0x5e1a55
test eax, eax
je 0x407aac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407abd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x41
jne 0x407b06
mov eax, 0x5eabd2
test eax, eax
je 0x407aec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407afd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x42
jne 0x407b46
mov eax, 0x5ef7c7
test eax, eax
je 0x407b2c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407b3d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x43
jne 0x407b86
mov eax, 0x5f4383
test eax, eax
je 0x407b6c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407b7d
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x44
jne 0x407bc6
mov eax, 0x5fa3c7
test eax, eax
je 0x407bac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407bbd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
jmp 0x407c01
cmp dword [ebp + 8], 0x45
jne 0x407c01
mov eax, 0x6005df
test eax, eax
je 0x407bec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00412576
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407bfd
push ebx
call fcn.00412552
add esp, 4
pop eax
mov dword [ebp - 4], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 4]
test eax, eax
jne 0x407c14
mov eax, 0x4a4d1a
push eax
push 1
mov ebx, 0x4127b0
call fcn.00412564
add esp, 0x10
mov dword [ebp - 8], eax
mov dword [ebp - 0xc], esp
push 0
push 0
push 0
push 0x4a4c9c
push dword [ebp - 8]
mov eax, dword [ebp - 4]
test eax, eax
je 0x407c4e
add eax, 8
push eax
mov eax, 0
call fcn.00412582
cmp dword [ebp - 0xc], esp
je 0x407c6b
push 6
call fcn.0041255e
add esp, 4
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407c7b
push ebx
call fcn.00412552
add esp, 4
mov esp, ebp
pop ebp
ret 4