Function at 0x10427cf
Capabilities:
Parse credit card information

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xdc
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
xor edi, edi
cmp esi, edi
je 0x1043abc
mov ebx, dword [ebp + 0x10]
cmp ebx, edi
je 0x1043abc
mov eax, dword [ebp + 0x14]
cmp eax, edi
je 0x104280e
cmp dword [eax + 8], 0x4c
jae 0x104280e
push edi
push edi
push 0x1e8
jmp 0x1043ac3
push 0x98
push edi
push ebx
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 8]
push eax
push esi
call fcn.010466dc
push 1
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.010469d6
cmp eax, edi
mov dword [ebp + 0x10], eax
jl 0x1043aae
cmp byte [ebp - 0x14], 0
jne 0x1043acd
mov eax, dword [ebp - 0x28]
mov dword [ebx + 0x10], eax
mov eax, dword [esi + 0xe4]
mov dword [ebx + 4], eax
mov eax, dword [ebp - 0x18]
cmp eax, 0x30
jle 0x10429da
cmp eax, 0x4c
jg 0x1043786
je 0x1043799
cmp eax, 0x33
je 0x10436bf
cmp eax, 0x3f
jle 0x1043a74
cmp eax, 0x41
jle 0x104289b
cmp eax, 0x44
jle 0x1043a74
cmp eax, 0x46
jg 0x1043a74
push 1
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.010469d6
cmp eax, edi
mov dword [ebp + 0x10], eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x66
je 0x10428d9
cmp dword [ebp - 0x18], 0x4b
je 0x1042905
cmp dword [ebp - 0x18], 0x47
je 0x10429bc
mov esi, dword [ebp + 8]
xor edi, edi
jmp 0x104289b
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
mov dword [ebx], 9
call fcn.01042476
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
jmp 0x10429bc
mov dword [ebx], 0xa
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x4b
je 0x104290b
cmp dword [ebp - 0x18], 0x4c
jne 0x1042944
and dword [ebx + 0x24], 0
and dword [ebx + 0x2c], 0
jmp 0x10429b2
cmp dword [ebp - 0x18], 0x4d
jne 0x10436b1
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
lea eax, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebp + 8]
movsd dword es:[edi], dword [esi]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x4e
jne 0x1043695
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x4c
jne 0x10436a3
lea edi, [ebx + 0x30]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebx]
cmp eax, 9
je 0x1043a74
cmp eax, 0xa
je 0x1043a74
mov esi, dword [ebp + 8]
xor edi, edi
jmp 0x104280e
je 0x1043601
dec eax
dec eax
je 0x104359d
dec eax
dec eax
je 0x1043571
dec eax
je 0x1042d5c
sub eax, 0x1d
je 0x1042b4a
sub eax, 6
je 0x1042aa5
sub eax, 5
jne 0x1043a74
mov dword [ebp - 0x10], eax
mov dword [ebp + 0xc], eax
lea edi, [ebp - 0x68]
mov dword [ebp + 0x14], eax
push 1
lea eax, [edi - 0x14]
push eax
push esi
call fcn.010469d6
test eax, eax
jl 0x1042a57
cmp byte [edi], 0
jne 0x1042a57
mov ecx, dword [edi - 4]
mov edx, dword [ebp + 0x14]
cmp ecx, dword [edx + 0x100ecf0]
jne 0x1042a51
inc dword [ebp + 0xc]
add dword [ebp + 0x14], 0xc
add edi, 0x18
cmp dword [ebp + 0x14], 0x18
jne 0x1042a1e
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1042a72
cmp dword [ebp - 0x10], 2
jne 0x1042a72
mov dword [ebx], 0xd
lea esi, [ebp - 0x7c]
jmp 0x1042b3e
mov eax, dword [ebp - 0x10]
and dword [ebx], 0
mov ecx, eax
imul ecx, ecx, 0x18
imul eax, eax, 0xc
lea esi, [ebp + ecx - 0x7c]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x100ecf4]
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 8]
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
jmp 0x1043a74
push 1
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.010469d6
cmp eax, edi
mov dword [ebp + 0x10], eax
jl 0x1042b31
cmp byte [ebp - 0x14], 0
jne 0x1042b31
cmp dword [ebp - 0x18], 0x2a
jne 0x1042b31
mov eax, dword [ebp - 8]
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x40], eax
mov eax, dword [ebp - 4]
mov dword [ebx], 5
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x44], eax
jmp 0x1042b0a
cmp byte [ebp - 0x14], 0
jne 0x1042b1f
cmp dword [ebp - 0x18], 0x2b
jne 0x1042afa
lea edi, [ebx + 0x30]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x1042b0a
cmp dword [ebp - 0x18], 0x29
je 0x1043a74
cmp dword [ebp - 0x18], 4
je 0x1042b28
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jge 0x1042ae2
mov dword [ebx + 0x38], 0x10
jmp 0x1042b38
mov dword [ebx + 0x38], 0x11
jmp 0x1042b38
mov dword [ebx + 0x38], 0x12
and dword [ebx], 0
lea esi, [ebp - 0x28]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x1042a94
push edi
lea eax, [esi + 0xe4]
dec dword [eax]
mov eax, dword [eax]
lea ecx, [ebp + 0x14]
push ecx
push eax
lea eax, [esi + 0xe8]
push eax
mov dword [ebp + 0x14], edi
call fcn.0104213c
cmp eax, edi
jl 0x1043acd
push 1
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.010469d6
cmp eax, edi
mov dword [ebp + 0x10], eax
jl 0x1042d43
cmp byte [ebp - 0x14], 0
jne 0x1042d43
cmp dword [ebp - 0x18], 0x23
je 0x1042ba2
cmp dword [ebp - 0x18], 0x26
jne 0x1042d43
cmp dword [ebp - 0x18], 0x26
jne 0x1042c17
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x40]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
lea eax, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebp + 8]
movsd dword es:[edi], dword [esi]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1042bfe
cmp byte [ebp - 0x14], 0
jne 0x1042bfe
cmp dword [ebp - 0x18], 0x27
jne 0x1042bfe
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1042bfe
cmp byte [ebp - 0x14], 0
jne 0x1042bfe
cmp dword [ebp - 0x18], 0x23
je 0x1042c17
and dword [ebx], 0
lea esi, [ebp - 0x28]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x38], 7
jmp 0x1042a94
mov eax, dword [ebp - 8]
lea edi, [ebx + 0x30]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x14]
push 0x10
add esi, 0x20
lea edi, [ebx + 0x58]
pop ecx
rep movsd dword es:[edi], dword [esi]
dec dword [ebx + 4]
mov dword [ebx + 0x50], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x54], eax
mov dword [ebx], 4
jmp 0x1042c58
cmp byte [ebp - 0x14], 0
jne 0x1042c6d
cmp dword [ebp - 0x18], 4
je 0x1042c6d
cmp dword [ebp - 0x18], 0x25
je 0x1042c86
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jge 0x1042c46
and dword [ebx], 0
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x38], 6
jmp 0x1042a94
cmp dword [ebp + 0xc], 0
je 0x1042ce2
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 4]
inc eax
push eax
push ebx
push 0
push dword [ebp + 0xc]
call fcn.0104232e
mov dword [ebp + 0x10], eax
cmp eax, 0xc000a083
jne 0x1042cbf
mov eax, dword [ebp - 0x2c]
lea esi, [ebp - 0x3c]
mov dword [ebx + 0x38], eax
jmp 0x10435d7
test eax, eax
jl 0x1043a74
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 4]
inc eax
push eax
push dword [ebp + 0xc]
call fcn.01041de4
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
lea eax, [ebp + 0xc]
push eax
lea eax, [ebx + 0x30]
push eax
lea eax, [ebx + 0x58]
push eax
mov eax, dword [ebp + 8]
push eax
call dword [eax + 0xc0]
cmp dword [ebp + 0xc], 0
mov dword [ebp + 0x10], eax
jne 0x1042d22
test eax, eax
jl 0x1043a74
lea eax, [ebp + 0xc]
push eax
lea eax, [ebx + 0x40]
push eax
lea eax, [ebx + 0x78]
push eax
mov eax, dword [ebp + 8]
push eax
call dword [eax + 0xc0]
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp dword [ebp + 0xc], 0
je 0x1043a74
lea esi, [ebx + 0x10]
mov dword [ebx + 0x38], 0x1c
jmp 0x10435d7
and dword [ebx], 0
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x38], 8
jmp 0x1042a94
mov al, byte [esi + 0xe0]
test al, al
je 0x1042d72
cmp dword [esi + 0xe4], edi
je 0x10435cd
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x2c], edi
test al, al
jne 0x1042d83
mov byte [esi + 0xe0], 1
push 1
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.010469d6
cmp eax, edi
mov dword [ebp + 0x10], eax
jl 0x1042e1a
cmp byte [ebp - 0x14], 0
jne 0x1042e1a
cmp dword [ebp - 0x18], 6
je 0x1042dac
cmp dword [ebp - 0x18], 0x16
jne 0x1042e1a
cmp dword [ebp - 0x18], 0x16
mov eax, dword [ebp - 8]
mov dword [ebx + 0x50], eax
mov eax, dword [ebp - 4]
mov dword [ebx], 3
mov dword [ebx + 0x54], eax
jne 0x1042e32
lea edi, [ebx + 0x30]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x40]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
lea eax, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebp + 8]
movsd dword es:[edi], dword [esi]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1042e26
cmp byte [ebp - 0x14], 0
jne 0x1042e26
cmp dword [ebp - 0x18], 0x17
jne 0x1042e26
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1042e1a
cmp byte [ebp - 0x14], 0
jne 0x1042e1a
cmp dword [ebp - 0x18], 6
je 0x1042e32
mov dword [ebx + 0x38], 4
jmp 0x1042b38
mov dword [ebx + 0x38], 5
jmp 0x1042b38
mov eax, dword [ebp - 8]
and dword [ebx + 0x58], 0
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 4]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x30], eax
cmp dword [ebp + 0x10], 0
jl 0x1042e82
push 0
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1042e82
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
call fcn.010466dc
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.01046737
mov dword [ebp + 0x10], eax
mov eax, dword [ebp - 0x18]
cmp eax, 0x1a
je 0x104349e
cmp eax, 0x1b
je 0x104349e
cmp eax, 4
je 0x104349e
cmp byte [ebp - 0x14], 0
jne 0x104349e
xor edi, edi
cmp dword [ebp + 0x10], edi
jl 0x104349e
sub eax, 7
je 0x10431d6
dec eax
je 0x10430f1
sub eax, 7
je 0x104302b
sub eax, 9
je 0x1042f6e
sub eax, 4
jne 0x1042e4c
mov dword [ebp - 0x10], edi
mov dword [ebp + 0x10], edi
lea esi, [ebp - 0x98]
push 1
lea eax, [esi - 0x14]
push eax
push dword [ebp + 8]
call fcn.010469d6
test eax, eax
jl 0x1042f22
cmp byte [esi], 0
jne 0x1042f22
mov ecx, dword [esi - 4]
cmp ecx, dword [edi + 0x100ee28]
jne 0x1042f1c
inc dword [ebp + 0x10]
add edi, 0xc
add esi, 0x18
cmp edi, 0x30
jne 0x1042eec
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x10432ed
cmp dword [ebp - 0x10], 4
jne 0x104330e
cmp dword [ebp + 0x14], 0
je 0x10432e5
push 1
lea eax, [ebp - 0xc]
push eax
push dword [ebx + 0x58]
push dword [ebp + 0x14]
call fcn.0104213c
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043acd
push 0x4c
push 0
push dword [ebp - 0xc]
call sub.msvcrt.dll_memset
jmp 0x10431b7
mov dword [ebp - 0x10], edi
mov dword [ebp + 0x10], edi
lea esi, [ebp - 0xc8]
push 1
lea eax, [esi - 0x14]
push eax
push dword [ebp + 8]
call fcn.010469d6
test eax, eax
jl 0x1042fb0
cmp byte [esi], 0
jne 0x1042fb0
mov ecx, dword [esi - 4]
cmp ecx, dword [edi + 0x100ed98]
jne 0x1042faa
inc dword [ebp + 0x10]
add edi, 0xc
add esi, 0x18
cmp edi, 0x48
jne 0x1042f7a
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043341
cmp dword [ebp - 0x10], 6
jne 0x1043362
cmp dword [ebp + 0x14], 0
je 0x10432e5
push 1
lea eax, [ebp - 0xc]
push eax
push dword [ebx + 0x58]
push dword [ebp + 0x14]
call fcn.0104213c
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043acd
mov edi, dword [ebp - 0xc]
lea esi, [ebp - 0xc4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add edi, 0x10
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add edi, 0x30
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add edi, 0x20
lea esi, [ebp - 0x7c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x48], 0
jmp 0x10432cc
xor edi, edi
mov dword [ebp - 0x10], edi
mov dword [ebp + 0x10], edi
lea esi, [ebp - 0xc8]
push 1
lea eax, [esi - 0x14]
push eax
push dword [ebp + 8]
call fcn.010469d6
test eax, eax
jl 0x104306f
cmp byte [esi], 0
jne 0x104306f
mov ecx, dword [esi - 4]
cmp ecx, dword [edi + 0x100ede0]
jne 0x1043069
inc dword [ebp + 0x10]
add edi, 0xc
add esi, 0x18
cmp edi, 0x48
jne 0x1043039
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043395
cmp dword [ebp - 0x10], 6
jne 0x10433b3
cmp dword [ebp + 0x14], 0
je 0x10432e5
push 1
lea eax, [ebp - 0xc]
push eax
push dword [ebx + 0x58]
push dword [ebp + 0x14]
call fcn.0104213c
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043acd
mov edi, dword [ebp - 0xc]
lea esi, [ebp - 0xc4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add edi, 0x10
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add edi, 0x30
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add edi, 0x20
lea esi, [ebp - 0x7c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x48], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x49], 1
jmp 0x10432d3
xor edi, edi
mov dword [ebp - 0x10], edi
mov dword [ebp + 0x10], edi
lea esi, [ebp - 0x98]
push 1
lea eax, [esi - 0x14]
push eax
push dword [ebp + 8]
call fcn.010469d6
test eax, eax
jl 0x1043135
cmp byte [esi], 0
jne 0x1043135
mov ecx, dword [esi - 4]
cmp ecx, dword [edi + 0x100ed20]
jne 0x104312f
inc dword [ebp + 0x10]
add edi, 0xc
add esi, 0x18
cmp edi, 0x30
jne 0x10430ff
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x10433e3
cmp dword [ebp - 0x10], 4
jne 0x1043412
cmp dword [ebp + 0xc], 0
je 0x1043177
lea eax, [ebp - 0x7c]
push eax
mov eax, dword [ebx + 4]
inc eax
push eax
push dword [ebp + 0xc]
call fcn.01041c70
mov dword [ebp + 0x10], eax
cmp eax, 0xc00000bd
je 0x1043448
test eax, eax
jl 0x1043acd
cmp dword [ebp + 0x14], 0
je 0x10432e5
push 1
lea eax, [ebp - 0xc]
push eax
push dword [ebx + 0x58]
push dword [ebp + 0x14]
call fcn.0104213c
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043acd
push 0x4c
push 0
push dword [ebp - 0xc]
call sub.msvcrt.dll_memset
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x48], 1
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x49], 0
mov edi, dword [ebp - 0xc]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add esp, 0xc
add edi, 0x20
lea esi, [ebp - 0x7c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x10432d3
lea esi, [ebp - 0x28]
lea edi, [ebp - 0x4c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xor edi, edi
mov dword [ebp - 0x10], edi
mov dword [ebp + 0x10], edi
lea esi, [ebp - 0xc8]
push 1
lea eax, [esi - 0x14]
push eax
push dword [ebp + 8]
call fcn.010469d6
test eax, eax
jl 0x1043224
cmp byte [esi], 0
jne 0x1043224
mov ecx, dword [esi - 4]
cmp ecx, dword [edi + 0x100ed50]
jne 0x104321e
inc dword [ebp + 0x10]
add edi, 0xc
add esi, 0x18
cmp edi, 0x48
jne 0x10431ee
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043457
cmp dword [ebp - 0x10], 6
jne 0x104345c
cmp dword [ebp + 0xc], 0
je 0x104326d
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x7c]
push eax
mov eax, dword [ebx + 4]
inc eax
push eax
push dword [ebp + 0xc]
call fcn.01041afe
mov dword [ebp + 0x10], eax
cmp eax, 0xc00000bd
je 0x104348c
test eax, eax
jl 0x1043acd
cmp dword [ebp + 0x14], 0
je 0x10432e5
push 1
lea eax, [ebp - 0xc]
push eax
push dword [ebx + 0x58]
push dword [ebp + 0x14]
call fcn.0104213c
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043acd
push 0x4c
push 0
push dword [ebp - 0xc]
call sub.msvcrt.dll_memset
mov edi, dword [ebp - 0xc]
lea esi, [ebp - 0xc4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add edi, 0x30
lea esi, [ebp - 0x4c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xc]
add esp, 0xc
add edi, 0x20
lea esi, [ebp - 0x7c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x48], 1
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x49], 0
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0xc]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0xc]
mov dword [ecx + 0x44], eax
inc dword [ebx + 0x58]
jmp 0x1042e4c
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
imul eax, eax, 0x18
lea esi, [ebp + eax - 0xac]
jmp 0x10433ff
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
imul ecx, ecx, 0x18
imul eax, eax, 0xc
lea esi, [ebp + ecx - 0xac]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x100ee2c]
jmp 0x1043440
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
imul eax, eax, 0x18
lea esi, [ebp + eax - 0xdc]
jmp 0x10433ff
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
imul ecx, ecx, 0x18
imul eax, eax, 0xc
lea esi, [ebp + ecx - 0xdc]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x100ed9c]
jmp 0x1043440
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
imul eax, eax, 0x18
lea esi, [ebp + eax - 0xdc]
jmp 0x10433ff
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
imul ecx, ecx, 0x18
imul eax, eax, 0xc
lea esi, [ebp + ecx - 0xdc]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x100ede4]
jmp 0x1043440
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
imul eax, eax, 0x18
lea esi, [ebp + eax - 0xac]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x38], 0xb
jmp 0x1043a74
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
imul ecx, ecx, 0x18
imul eax, eax, 0xc
lea esi, [ebp + ecx - 0xac]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x100ed24]
mov dword [ebx + 0x38], eax
jmp 0x1043a74
lea esi, [ebp - 0x7c]
mov dword [ebx + 0x38], 0x1f
jmp 0x10435d7
and dword [ebx], 0
jmp 0x1043406
mov eax, dword [ebp - 8]
and dword [ebx], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
imul ecx, ecx, 0x18
imul eax, eax, 0xc
lea esi, [ebp + ecx - 0xdc]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x100ed54]
jmp 0x1043440
mov dword [ebx + 0x38], 0x1e
lea esi, [ebp - 0xc4]
jmp 0x10435d7
cmp byte [ebp - 0x14], 0
mov eax, dword [ebp - 0x34]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 4], eax
jne 0x1043a74
cmp dword [ebp + 0x10], 0
jl 0x1043a74
xor esi, esi
mov dword [ebp - 0x10], esi
cmp dword [ebp + 0xc], esi
je 0x10434e4
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebx + 4]
inc eax
push eax
push ebx
push dword [ebp + 0x14]
push dword [ebp + 0xc]
call fcn.0104232e
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0x10]
cmp eax, 0xc000a083
jne 0x10434fc
mov eax, dword [ebp - 0x10]
mov dword [ebx + 0x38], eax
lea esi, [ebp - 0x4c]
jmp 0x10435d7
cmp eax, esi
jl 0x1043acd
cmp dword [ebp - 0x18], 0x1b
jne 0x1043537
mov byte [ebx + 0x5c], 1
cmp dword [ebp + 0xc], esi
je 0x1043a74
mov eax, dword [ebx + 4]
inc eax
push eax
push dword [ebp + 0xc]
call fcn.01041de4
mov dword [ebp + 0x10], eax
test eax, eax
jge 0x1043a74
mov eax, dword [ebp + 0x10]
jmp 0x1043acd
push 1
lea eax, [ebp - 0x2c]
push eax
push dword [ebx + 4]
mov eax, dword [ebp + 8]
add eax, 0xe8
push eax
call fcn.0104213c
cmp eax, esi
mov dword [ebp + 0x10], eax
jl 0x1043acd
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x2c]
inc dword [eax + 0xe4]
push 0x26
pop ecx
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
jmp 0x1043a74
cmp dword [esi + 0xe4], edi
jne 0x1043584
mov dword [ebx], 1
jmp 0x1043a74
and dword [ebx], 0
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x38], 9
jmp 0x1042a94
cmp byte [esi + 0xe0], 0
je 0x10435f6
cmp dword [esi + 0xe4], edi
jne 0x10435f6
lea eax, [ebp + 0x17]
push eax
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.01046919
cmp eax, edi
mov dword [ebp + 0x10], eax
jl 0x1043a74
cmp byte [ebp + 0x17], 0
jne 0x10435f6
mov dword [ebx + 0x38], 0x1d
lea esi, [ebp - 0x28]
mov eax, dword [ebp - 8]
and dword [ebx], 0
and dword [ebp + 0x10], 0
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x34], eax
movsd dword es:[edi], dword [esi]
jmp 0x1043a74
mov dword [ebx], 7
jmp 0x1042b3b
cmp byte [esi + 0xe0], 0
je 0x1043612
cmp dword [esi + 0xe4], edi
je 0x10435cd
xor eax, eax
mov dword [ebp - 0x10], eax
mov dword [ebp + 0xc], eax
lea edi, [ebp - 0x68]
mov dword [ebp + 0x14], eax
push 1
lea eax, [edi - 0x14]
push eax
push esi
call fcn.010469d6
test eax, eax
jl 0x1043659
cmp byte [edi], 0
jne 0x1043659
mov ecx, dword [edi - 4]
mov edx, dword [ebp + 0x14]
cmp ecx, dword [edx + 0x100ed08]
jne 0x1043653
inc dword [ebp + 0xc]
add dword [ebp + 0x14], 0xc
add edi, 0x18
cmp dword [ebp + 0x14], 0x18
jne 0x1043620
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043671
cmp dword [ebp - 0x10], 2
jne 0x1043671
mov dword [ebx], 8
jmp 0x1042a6a
mov eax, dword [ebp - 0x10]
and dword [ebx], 0
mov ecx, eax
imul ecx, ecx, 0x18
imul eax, eax, 0xc
lea esi, [ebp + ecx - 0x7c]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x100ed0c]
jmp 0x1042a91
push 0
push 0
push 0x23b
jmp 0x1043a67
push 0
push 0
push 0x246
jmp 0x1043a67
push 0
push 0
push 0x24e
jmp 0x1043a67
cmp byte [esi + 0xe0], 0
mov eax, dword [ebp - 8]
je 0x10436e4
and dword [ebx], 0
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x38], 0x14
movsd dword es:[edi], dword [esi]
jmp 0x1042a97
mov dword [ebx + 0x50], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x54], eax
push 1
lea eax, [ebp - 0x28]
push eax
push esi
mov dword [ebx], 2
call fcn.010469d6
cmp eax, edi
jmp 0x104375a
cmp byte [ebp - 0x14], 0
mov eax, dword [ebp - 0x18]
jne 0x1043764
cmp eax, 4
je 0x1043764
cmp eax, 0x34
je 0x1043a74
cmp eax, 1
je 0x1043764
sub eax, 0x37
je 0x1043747
dec eax
je 0x1043742
dec eax
je 0x104373d
dec eax
dec eax
jne 0x104374a
test edi, edi
je 0x104374a
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xor edi, edi
jmp 0x104374a
lea edi, [ebx + 0x30]
jmp 0x104374a
lea edi, [ebx + 0x40]
jmp 0x104374a
lea edi, [ebx + 0x20]
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
test eax, eax
mov dword [ebp + 0x10], eax
jge 0x1043703
jmp 0x1043acd
cmp eax, 0x34
je 0x1043a74
and dword [ebx], 0
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x38], 0x13
jmp 0x1042a94
cmp eax, 0x4f
je 0x1043799
cmp eax, 0x65
jne 0x1043a74
jmp 0x10437c6
mov esi, dword [ebp + 8]
push 1
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x4f
je 0x1043796
cmp dword [ebp - 0x18], 0x65
jne 0x10437d1
mov dword [ebx], 0xc
jmp 0x1043a74
and dword [ebx + 0x2c], 0
and dword [ebx + 0x24], 0
cmp dword [ebp - 0x18], 0x51
jne 0x1043843
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
lea eax, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebp + 8]
movsd dword es:[edi], dword [esi]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x52
je 0x1043820
push 0
push 0
push 0x281
jmp 0x1043a67
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x50
je 0x1043857
push 0
push 0
push 0x28d
jmp 0x1043a67
lea edi, [ebx + 0x30]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
lea eax, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebp + 8]
mov dword [ebx], 0xb
movsd dword es:[edi], dword [esi]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
mov eax, dword [ebp - 0x18]
add eax, 0xffffffad
cmp eax, 0xb
ja case.0x1043899.92
jmp dword [eax*4 + 0x1043ad7]
and dword [ebx + 0x40], 0
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
mov eax, dword [ebp - 0x18]
sub eax, 0x5f
mov dword [ebx + 0x54], 3
je 0x1043a58
dec eax
je 0x1043a4f
dec eax
je 0x10439e7
dec eax
je 0x1043a09
push 0
push 0
push 0x318
jmp 0x1043a67
mov dword [ebx + 0x40], 1
jmp 0x10438a4
mov dword [ebx + 0x40], 2
jmp 0x10438a4
mov dword [ebx + 0x40], 3
jmp 0x10438a4
mov dword [ebx + 0x40], 4
jmp 0x10438a4
mov dword [ebx + 0x40], 5
jmp 0x10438a4
mov dword [ebx + 0x40], 6
jmp 0x10438a4
mov dword [ebx + 0x40], 7
jmp 0x10438a4
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x5c
jne case.0x1043899.94
mov dword [ebx + 0x40], 9
lea edi, [ebx + 0x44]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
lea eax, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebp + 8]
movsd dword es:[edi], dword [esi]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
je 0x10438a4
jmp 0x1043a74
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x5c
je 0x10439de
push 0
push 0
push 0x2d6
jmp 0x1043a67
mov dword [ebx + 0x40], 8
jmp 0x1043975
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
mov dword [ebx + 0x54], 2
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
push 1
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 8]
call fcn.010469d6
mov dword [ebp + 0x10], eax
test eax, eax
jl 0x1043a74
cmp byte [ebp - 0x14], 0
jne 0x1043a74
cmp dword [ebp - 0x18], 0x63
je 0x1043a35
push 0
push 0
push 0x30a
jmp 0x1043a67
lea edi, [ebx + 0x58]
lea esi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
lea eax, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebp + 8]
movsd dword es:[edi], dword [esi]
call fcn.010469d6
jmp 0x1043a71
mov dword [ebx + 0x54], 1
jmp 0x1043a74
and dword [ebx + 0x54], 0
jmp 0x1043a74
push 0
push 0
push 0x2e5
push 0xc000a083
call fcn.0104450c
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x14]
sub eax, dword [ebx + 0x10]
cmp byte [ebp - 0x14], 0
mov dword [ebx + 0x14], eax
je 0x104352f
xor eax, eax
cmp dword [ebp + 0x10], eax
jl 0x104352f
push eax
push eax
push 0x761
push 0xc000a083
call fcn.0104450c
mov dword [ebp + 0x10], eax
jmp 0x104352f
push edi
push edi
push 0x1f4
push 0xc000a083
jmp 0x1043ac8
push edi
push edi
push 0x1e1
push 0xc000000d
call fcn.0104450c
pop edi
pop esi
pop ebx
leave
ret 0x10