Function at 0x4ef950
Capabilities:
Parse credit card information

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x57a455
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1e8
mov eax, dword [0x5e8024]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x1b8], eax
add eax, 4
mov dword [ebp - 0x1c4], 0
push eax
lea ecx, [ebp - 0x2c]
call fcn.00407250
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x2c]
push 1
push 0x5a7220
call fcn.00408c60
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x44], eax
xor edi, edi
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x1bc], eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], 7
mov word [ebp - 0x44], cx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], ecx
jbe 0x4f090e
mov esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
nop dword [eax + eax]
cmp eax, 5
ja case.default.0x4efa09
jmp dword [eax*4 + 0x4f0950]
xor eax, eax
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 7
mov word [ebp - 0x9c], ax
mov byte [ebp - 4], 3
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x29
jne 0x4efac3
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0xa4], 1
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4efaae
mov dword [ebp - 0x1cc], ecx
mov eax, dword [ebp - 0xa0]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x9c]
mov dword [ecx], 1
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f0085
lea edx, [ebp - 0xa4]
push edx
push ecx
lea ecx, [eax + 0x20]
call fcn.004f0b40
jmp 0x4f0085
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x28
jne 0x4efb22
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0xa4], 0
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4efaae
mov dword [ebp - 0x1d0], ecx
mov eax, dword [ebp - 0xa0]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x9c]
mov dword [ecx], 0
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f0085
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x3d
jne 0x4efb85
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0xa4], 2
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4efaae
mov dword [ebp - 0x1d4], ecx
mov eax, dword [ebp - 0xa0]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x9c]
mov dword [ecx], 2
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f0085
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x3c
jne 0x4efcae
xor eax, eax
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
mov byte [ebp - 4], 8
mov edx, 4
lea eax, [edi + 1]
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0x1c0], eax
cmp eax, dword [ebp - 0x1c]
jne 0x4efbf9
mov dword [ebp - 0xe4], edx
jmp 0x4efc4b
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2 + 2], 0x3d
jne 0x4efc11
mov edx, 6
jmp 0x4efc3f
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2 + 2], 0x3e
jne 0x4efc29
mov edx, 8
jmp 0x4efc3f
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2 + 2], 0x3c
jne 0x4efc4b
mov edx, 0xa
mov dword [ebp - 0xe4], edx
mov edi, dword [ebp - 0x1c0]
mov eax, dword [ebp - 0x1b8]
inc edi
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4efc8a
mov dword [ebp - 0x1d8], ecx
mov eax, dword [ebp - 0xe0]
mov dword [ecx + 4], eax
lea eax, [ebp - 0xdc]
mov dword [ecx], edx
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4efc9a
lea edx, [ebp - 0xe4]
push edx
push ecx
lea ecx, [eax + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xdc]
call fcn.00408570
jmp 0x4f0086
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x3e
jne 0x4efdd7
xor eax, eax
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 7
mov word [ebp - 0xfc], ax
mov byte [ebp - 4], 0xc
mov edx, 0xc
lea eax, [edi + 1]
mov dword [ebp - 0x104], edx
mov dword [ebp - 0x1c0], eax
cmp eax, dword [ebp - 0x1c]
jne 0x4efd22
mov dword [ebp - 0x104], edx
jmp 0x4efd74
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2 + 2], 0x3d
jne 0x4efd3a
mov edx, 0xe
jmp 0x4efd68
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2 + 2], 0x3e
jne 0x4efd52
mov edx, 0x10
jmp 0x4efd68
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2 + 2], 0x3c
jne 0x4efd74
mov edx, 0x12
mov dword [ebp - 0x104], edx
mov edi, dword [ebp - 0x1c0]
mov eax, dword [ebp - 0x1b8]
inc edi
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4efdb3
mov dword [ebp - 0x1dc], ecx
mov eax, dword [ebp - 0x100]
mov dword [ecx + 4], eax
lea eax, [ebp - 0xfc]
mov dword [ecx], edx
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4efdc3
lea edx, [ebp - 0x104]
push edx
push ecx
lea ecx, [eax + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xfc]
call fcn.00408570
jmp 0x4f0086
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x7e
jne 0x4efdf6
mov dword [ebp - 0x1bc], 5
jmp 0x4f0085
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
movzx eax, word [eax + edi*2]
push eax
call fcn.00535da5
mov ecx, dword [ebp - 0x2c]
add esp, 4
test eax, eax
jne 0x4f003c
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x5f
je 0x4f003c
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x24
je 0x4f003c
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x26
je 0x4f003c
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x3f
je 0x4f003c
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x21
je 0x4f003c
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x25
je 0x4f003c
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
movzx eax, word [eax + edi*2]
push eax
call fcn.00535d8f
add esp, 4
test eax, eax
je 0x4efecf
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
mov dword [ebp - 0x34], 0
cmovae eax, dword [ebp - 0x44]
xor ecx, ecx
mov dword [ebp - 0x1bc], 3
mov word [eax], cx
jmp 0x4f0086
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x2c]
cmp esi, 8
cmovae eax, ecx
cmp word [eax + edi*2], 0x22
jne 0x4eff09
inc edi
mov dword [ebp - 0x34], 0
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
mov dword [ebp - 0x1bc], 1
cmovae eax, dword [ebp - 0x44]
xor ecx, ecx
mov word [eax], cx
jmp 0x4f0086
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
movzx eax, word [eax + edi*2]
push eax
call fcn.00535dfa
add esp, 4
test eax, eax
je 0x4eff49
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
mov dword [ebp - 0x34], 0
cmovae eax, dword [ebp - 0x44]
xor ecx, ecx
mov dword [ebp - 0x1bc], 4
mov word [eax], cx
jmp 0x4f0086
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
movzx eax, word [eax + edi*2]
push eax
call fcn.00535de4
add esp, 4
test eax, eax
je 0x4f0085
xor eax, eax
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], 7
mov word [ebp - 0x11c], ax
mov byte [ebp - 4], 0x10
cmp esi, 8
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x124], 0x18
cmovae eax, dword [ebp - 0x2c]
mov dword [ebp - 0x10c], 1
movzx eax, word [eax + edi*2]
mov word [ebp - 0x11c], ax
xor eax, eax
mov word [ebp - 0x11a], ax
mov eax, dword [ebp - 0x1b8]
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4f001b
mov dword [ebp - 0x1e0], ecx
mov eax, dword [ebp - 0x120]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x11c]
mov dword [ecx], 0x18
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f002b
lea edx, [ebp - 0x124]
push edx
push ecx
lea ecx, [eax + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x11c]
call fcn.00408570
jmp 0x4f0085
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
mov dword [ebp - 0x34], 0
cmovae eax, dword [ebp - 0x44]
xor edx, edx
cmp esi, 8
mov dword [ebp - 0x1bc], 2
mov word [eax], dx
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x44]
cmovae ecx, dword [ebp - 0x44]
movzx eax, word [eax + edi*2]
mov dword [ebp - 0x34], 1
mov word [ecx], ax
xor eax, eax
mov word [ecx + 2], ax
inc edi
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x9c]
jmp 0x4f08f7
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
movzx eax, word [eax + edi*2]
push eax
call fcn.00535dfa
add esp, 4
test eax, eax
jne 0x4f016f
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x128], 7
mov word [ebp - 0x13c], ax
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x44]
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x13c]
push dword [ebp - 0x34]
cmovae eax, dword [ebp - 0x44]
push eax
mov dword [ebp - 0x144], 0x17
call fcn.004082a0
mov eax, dword [ebp - 0x1b8]
xor ecx, ecx
mov dword [ebp - 0x1bc], ecx
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4f0150
mov dword [ebp - 0x1e4], ecx
mov eax, dword [ebp - 0x144]
mov dword [ecx], eax
mov eax, dword [ebp - 0x140]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x13c]
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f0160
lea edx, [ebp - 0x144]
push edx
push ecx
lea ecx, [eax + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x13c]
jmp 0x4f08f7
cmp esi, 8
lea eax, [ebp - 0x2c]
lea ecx, [ebp - 0x44]
cmovae eax, dword [ebp - 0x2c]
movzx eax, word [eax + edi*2]
inc edi
push eax
call fcn.0040baa0
jmp 0x4f08fc
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
movzx eax, word [eax + edi*2]
push eax
call fcn.00535d8f
add esp, 4
test eax, eax
jne 0x4f016f
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], 7
mov word [ebp - 0x15c], ax
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x44]
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x15c]
push dword [ebp - 0x34]
cmovae eax, dword [ebp - 0x44]
push eax
mov dword [ebp - 0x164], 0x16
call fcn.004082a0
mov eax, dword [ebp - 0x1b8]
xor ecx, ecx
mov dword [ebp - 0x1bc], ecx
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4f0243
mov dword [ebp - 0x1e8], ecx
mov eax, dword [ebp - 0x164]
mov dword [ecx], eax
mov eax, dword [ebp - 0x160]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x15c]
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f0253
lea edx, [ebp - 0x164]
push edx
push ecx
lea ecx, [eax + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x15c]
jmp 0x4f08f7
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
movzx eax, word [eax + edi*2]
push eax
call fcn.00535d8f
mov ecx, dword [ebp - 0x2c]
add esp, 4
test eax, eax
jne 0x4f04c1
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x5f
je 0x4f04c1
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x2e
je 0x4f04c1
xor eax, eax
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 7
mov word [ebp - 0x5c], ax
mov byte [ebp - 4], 0x1e
xor esi, esi
mov ecx, dword [0x594c18]
mov dword [ebp - 0x64], 0x14
test ecx, ecx
je 0x4f031c
nop dword [eax + eax]
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
push ecx
cmovae eax, dword [ebp - 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x4f0315
mov ecx, dword [esi*4 + 0x594c1c]
inc esi
test ecx, ecx
jne 0x4f02f0
jmp 0x4f031c
mov dword [ebp - 0x64], 0x18
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
push dword [ebp - 0x34]
cmovae eax, dword [ebp - 0x44]
lea ecx, [ebp - 0x5c]
push eax
call fcn.004082a0
xor ecx, ecx
mov dword [ebp - 0x60], ecx
cmp dword [ebp - 0x34], ecx
je 0x4f0422
cmp dword [ebp - 0x64], 0x14
jne 0x4f0422
mov edx, dword [ebp - 0x30]
lea eax, [ebp - 0x44]
mov esi, dword [ebp - 0x44]
cmp edx, 8
cmovae eax, esi
cmp word [eax], 0x25
jne 0x4f0367
mov ecx, 1
jmp 0x4f03be
cmp edx, 8
lea eax, [ebp - 0x44]
cmovae eax, esi
cmp word [eax], 0x24
jne 0x4f037d
mov ecx, 2
jmp 0x4f03be
cmp edx, 8
lea eax, [ebp - 0x44]
cmovae eax, esi
cmp word [eax], 0x3f
jne 0x4f0393
mov ecx, 3
jmp 0x4f03be
cmp edx, 8
lea eax, [ebp - 0x44]
cmovae eax, esi
cmp word [eax], 0x26
jne 0x4f03a9
mov ecx, 4
jmp 0x4f03be
cmp edx, 8
lea eax, [ebp - 0x44]
cmovae eax, esi
cmp word [eax], 0x21
mov eax, 5
cmove ecx, eax
mov dword [ebp - 0x60], ecx
test ecx, ecx
je 0x4f0422
push 0xffffffffffffffff
push 1
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x44]
call fcn.00408980
mov esi, eax
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x5c]
cmp eax, esi
je 0x4f0410
mov ecx, eax
call fcn.00408570
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x5c], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x4c], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x19c]
call fcn.00408570
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x1b8]
mov edx, dword [esi + 0x1c]
test edx, edx
je 0x4f0469
cmp dword [ebp - 0x64], 0x14
jne 0x4f0469
test ecx, ecx
jne 0x4f0440
mov eax, dword [edx]
mov eax, dword [eax + 4]
jmp 0x4f045f
cmp ecx, 2
je 0x4f045b
cmp ecx, 3
je 0x4f045b
cmp ecx, 4
je 0x4f0454
cmp ecx, 5
jne 0x4f0469
mov eax, dword [edx]
mov eax, dword [eax + 8]
jmp 0x4f045f
mov eax, dword [edx]
mov eax, dword [eax]
lea ecx, [ebp - 0x5c]
push ecx
mov ecx, edx
call eax
or byte [esi], al
xor ecx, ecx
mov dword [ebp - 0x1bc], ecx
mov ecx, dword [esi + 0x24]
cmp ecx, dword [esi + 0x28]
je 0x4f04a0
mov dword [ebp - 0x1c8], ecx
mov eax, dword [ebp - 0x64]
mov dword [ecx], eax
mov eax, dword [ebp - 0x60]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x5c]
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 0x1e
add dword [esi + 0x24], 0x20
jmp 0x4f04ad
lea eax, [ebp - 0x64]
push eax
push ecx
lea ecx, [esi + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00408570
mov esi, dword [ebp - 0x18]
jmp 0x4f08fc
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
lea ecx, [ebp - 0x44]
movzx eax, word [eax + edi*2]
inc edi
push eax
call fcn.0040baa0
jmp 0x4f08fc
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 1
jne 0x4f0664
xor eax, eax
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 7
mov word [ebp - 0xbc], ax
mov byte [ebp - 4], 0x23
mov dword [ebp - 0xc4], 0x17
mov dword [ebp - 0x1c0], 0x22
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x34]
cmp ecx, 0x7ffffffe
je 0x4f0949
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
push ecx
cmovae eax, dword [ebp - 0x44]
push eax
push 1
lea eax, [ebp - 0x1c0]
push eax
push ecx
push dword [ebp - 0x1c8]
lea ecx, [ebp - 0x1b4]
call fcn.00408fe0
mov ecx, dword [ebp - 0x1c4]
lea edx, [ebp - 0xbc]
or ecx, 1
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1c4], ecx
cmp edx, eax
je 0x4f05db
mov ecx, edx
call fcn.00408570
mov eax, dword [ebp - 0x1c0]
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xbc], xmm0
movq xmm0, qword [eax + 0x10]
mov word [eax], cx
mov ecx, dword [ebp - 0x1c4]
movq qword [ebp - 0xac], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
and ecx, 0xfffffffe
mov dword [ebp - 0x1c4], ecx
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x1b4]
call fcn.00408570
mov eax, dword [ebp - 0x1b8]
xor ecx, ecx
mov dword [ebp - 0x1bc], ecx
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4f063f
mov dword [ebp - 0x1ec], ecx
mov eax, dword [ebp - 0xc4]
mov dword [ecx], eax
mov eax, dword [ebp - 0xc0]
mov dword [ecx + 4], eax
lea eax, [ebp - 0xbc]
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 0x23
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f064f
lea edx, [ebp - 0xc4]
push edx
push ecx
lea ecx, [eax + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xbc]
call fcn.00408570
inc edi
jmp 0x4f08fc
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
cmp word [eax + edi*2], 0x22
jne 0x4f074c
xor eax, eax
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 7
mov word [ebp - 0x17c], ax
mov byte [ebp - 4], 0x28
lea eax, [ebp - 0x44]
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x17c]
push dword [ebp - 0x34]
cmovae eax, dword [ebp - 0x44]
push eax
mov dword [ebp - 0x184], 0x15
call fcn.004082a0
mov eax, dword [ebp - 0x1b8]
xor ecx, ecx
mov dword [ebp - 0x1bc], ecx
mov ecx, dword [eax + 0x24]
cmp ecx, dword [eax + 0x28]
je 0x4f0727
mov dword [ebp - 0x1f0], ecx
mov eax, dword [ebp - 0x184]
mov dword [ecx], eax
mov eax, dword [ebp - 0x180]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x17c]
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f0737
lea edx, [ebp - 0x184]
push edx
push ecx
lea ecx, [eax + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x17c]
call fcn.00408570
inc edi
jmp 0x4f08fc
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
lea ecx, [ebp - 0x44]
movzx eax, word [eax + edi*2]
push eax
call fcn.0040baa0
inc edi
jmp 0x4f08fc
cmp esi, 8
mov dword [ebp - 0x7c], 0
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x6c], 0
cmovae eax, ecx
mov dword [ebp - 0x68], 0
xor edx, edx
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 7
mov word [ebp - 0x7c], dx
movzx eax, word [eax + edi*2]
mov byte [ebp - 4], 0x2c
cmp eax, 0x3d
jne 0x4f07b8
mov eax, 3
inc edi
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
cmp eax, 0x3c
jne 0x4f0821
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
movzx eax, word [eax + edi*2 + 2]
cmp eax, 0x3e
jne 0x4f07e3
mov eax, 9
add edi, 2
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
cmp eax, 0x3c
jne 0x4f07fb
mov eax, 0xb
add edi, 2
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
cmp eax, 0x3d
jne 0x4f0813
mov eax, 7
add edi, 2
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
mov eax, 5
inc edi
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
cmp eax, 0x3e
jne 0x4f0881
cmp esi, 8
lea eax, [ebp - 0x2c]
cmovae eax, ecx
movzx eax, word [eax + edi*2 + 2]
cmp eax, 0x3c
jne 0x4f0849
mov eax, 0x13
add edi, 2
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
cmp eax, 0x3e
jne 0x4f085e
mov eax, 0x11
add edi, 2
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
cmp eax, 0x3d
jne 0x4f0873
mov eax, 0xf
add edi, 2
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
mov eax, 0xd
inc edi
mov dword [ebp - 0x84], eax
jmp 0x4f08a0
push 1
push 0x5a7668
lea ecx, [ebp - 0x7c]
mov dword [ebp - 0x84], 0x17
call fcn.004082a0
mov eax, dword [ebp - 0x84]
mov edx, dword [ebp - 0x1b8]
xor ecx, ecx
mov dword [ebp - 0x1bc], ecx
mov ecx, dword [edx + 0x24]
cmp ecx, dword [edx + 0x28]
je 0x4f08e0
mov dword [ebp - 0x1f4], ecx
mov dword [ecx], eax
mov eax, dword [ebp - 0x80]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x7c]
add ecx, 8
push eax
call fcn.00407250
mov byte [ebp - 4], 0x2c
mov eax, dword [ebp - 0x1b8]
add dword [eax + 0x24], 0x20
jmp 0x4f08f0
lea eax, [ebp - 0x84]
push eax
push ecx
lea ecx, [edx + 0x20]
call fcn.004f0b40
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x7c]
call fcn.00408570
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1bc]
cmp edi, dword [ebp - 0x1c]
jb 0x4efa00
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x44]
call fcn.00408570
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00408570
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0052df57
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00407df0
nop
adc dl, bh
dec esi
add ch, bl
add al, 0x4f
add byte [edx + 2], ah
dec edi
add byte [ecx + eax + 0x95004f], cl
dec edi
add byte [eax + 7], ch
dec edi
add ah, cl
int3