Function at 0x40b9e0
Capabilities:
Parse credit card information
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
or eax, 0xffffffff
mov word [ebp - 0x40], ax
xor eax, eax
push ebx
mov word [ebp - 0x3e], ax
mov dword [ebp - 0x54], eax
xor ecx, ecx
push esi
xor esi, esi
mov eax, 0x65
mov edx, 2
mul edx
seto cl
push edi
mov dword [ebp - 8], esi
mov dword [ebp - 0x50], 0x65
neg ecx
or ecx, eax
push ecx
call fcn.00420bfa
add esp, 4
xor ecx, ecx
push 4
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x58], eax
mov word [eax], cx
call fcn.00420bfa
mov edx, eax
add esp, 4
mov dword [ebp - 0x10], edx
test edx, edx
je 0x47492f
mov dword [edx], 1
mov dword [ebp - 0x4c], edx
mov ecx, dword [ebp + 0x10]
xor edi, edi
cmp dword [ecx + 8], esi
jbe 0x40ba8f
mov eax, dword [ecx + 4]
mov ebx, dword [eax + edi*4]
test ebx, ebx
je 0x40ba82
movzx eax, word [ebx + 8]
cmp ax, 0x3f
jg 0x40ba76
cmp ax, 0x30
jge 0x40bb2c
push ebx
call fcn.00420c6e
mov ecx, dword [ebp + 0x10]
add esp, 4
mov eax, dword [ecx + 4]
inc edi
mov dword [eax + edi*4 - 4], esi
cmp edi, dword [ecx + 8]
jb 0x40ba58
mov ebx, dword [ebp + 0xc]
mov dword [ecx + 8], esi
cmp word [ebx], si
je 0x40bc6c
mov edi, edi
movzx eax, word [ebx + esi*2]
cmp eax, 0x20
je 0x40bb76
cmp eax, 9
je 0x40bb76
movzx eax, word [ebx + esi*2]
mov dword [ebp - 8], esi
test ax, ax
je 0x40bc55
mov edi, eax
mov word [ebp - 0x3e], si
cmp edi, 0x30
jb 0x40bada
cmp edi, 0x39
jbe 0x40bd7a
cmp edi, 0x2e
je 0x40bd7a
cmp edi, 0x41
jae 0x40bb7c
cmp edi, 0x61
jae 0x40c26e
cmp edi, 0x5f
je 0x40bb85
mov eax, edi
cmp eax, 0x24
je case.0x40bb25.64
cmp eax, 0x3d
je 0x40be3e
sub eax, 0x1a
cmp eax, 0x44
ja case.0x40bb25.27
movzx eax, byte [eax + 0x40c320]
jmp dword [eax*4 + 0x40c2d4]
mov ecx, dword [ebx]
mov dword [ebp - 8], ecx
test ecx, ecx
je 0x40ba76
mov eax, dword [ecx + 0xc]
dec dword [eax]
mov eax, dword [ecx + 0xc]
cmp dword [eax], esi
je 0x47493c
push ecx
call fcn.00420c6e
add esp, 4
jmp 0x40ba76
push 0x40
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
inc esi
mov dword [ebp - 8], esi
jmp 0x40bc47
inc esi
jmp 0x40baa0
cmp edi, 0x5a
ja 0x40baec
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 8]
push eax
push ebx
call fcn.0040c5e0
cmp dword [ebp - 0x48], 0xffffffff
je 0x474b79
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
mov eax, dword [ebp - 0x4c]
mov esi, dword [ebp - 8]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0xc], eax
jmp 0x40bc47
cmp bx, 0x30
jae 0x40bdd9
cmp bx, 0x5f
je 0x40bd46
mov dword [ebp - 8], esi
test edi, edi
je 0x40c2c4
lea ecx, [ebp - 0x58]
call fcn.0040c51a
mov ebx, dword [ebp - 0x54]
mov edi, dword [ebp - 0x58]
push ebx
push edi
mov dword [ebp - 0xc], edi
call dword [sym.imp.USER32.dll_CharUpperBuffW]
cmp word [ebp - 0x20], 0xf
ja 0x40bc0b
mov ecx, dword [ebp - 0x48]
test ecx, ecx
jne 0x474b43
push 0x10
call fcn.00420bfa
mov ecx, eax
mov eax, dword [ebp - 0x4c]
add esp, 4
mov dword [ebp - 0x10], eax
test ecx, ecx
je 0x474b4e
mov edx, dword [ebp - 0x50]
mov dword [ecx], edi
mov dword [ecx + 4], ebx
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
inc dword [eax]
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
mov ebx, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
cmp word [ebx + esi*2], 0
jne 0x40baa0
mov ax, word [ebp - 0x40]
cmp ax, 0x30
jl 0x40bc69
cmp ax, 0x3f
jle 0x40bf9f
mov ecx, dword [ebp + 0x10]
mov eax, 0x7f
mov word [ebp - 0x40], ax
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 0x48], 0
mov word [ebp - 0x3e], si
call fcn.0040c370
mov eax, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x10]
xor esi, esi
dec dword [ebx]
jne 0x40bca7
push eax
call fcn.00420c6e
add esp, 4
push ebx
call fcn.00420c6e
add esp, 4
lea ecx, [ebp - 0x48]
call fcn.0040c87e
test al, al
jne 0x474c05
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ecx
call fcn.0040c584
test eax, eax
js 0x40c2cd
cmp edi, 0x24
jne 0x40c128
mov edi, 0x33
mov eax, dword [ebp - 0x40]
add eax, 0xffffffd0
cmp ax, 0xf
jbe 0x4749df
lea eax, [edi - 0x30]
mov word [ebp - 0x40], di
mov dword [ebp - 0x20], eax
cmp ax, 0xf
ja 0x4749f5
mov dword [ebp - 0x48], 0
mov edx, dword [ebp - 0x10]
inc esi
mov eax, dword [edx]
mov dword [ebp - 8], esi
cmp eax, 1
jg 0x40bde8
mov ecx, dword [ebp - 0xc]
xor edi, edi
xor eax, eax
mov word [ecx], ax
movzx ebx, word [ebx + esi*2]
mov dword [ebp - 0x54], edi
cmp bx, 0x5a
jbe 0x40bd72
cmp bx, 0x61
jb 0x40bbc1
cmp bx, 0x7a
ja 0x40bbc1
mov eax, dword [edx]
cmp eax, 1
jg 0x474a1f
lea eax, [edi + 2]
cmp dword [ebp - 0x50], eax
jb 0x40bee4
mov word [ecx + edi*2], bx
inc edi
xor eax, eax
mov word [ecx + edi*2], ax
mov eax, dword [ebp + 0xc]
inc esi
movzx ebx, word [eax + esi*2]
jmp 0x40bd29
cmp bx, 0x41
jae 0x40bd46
jmp 0x40bd32
mov edx, dword [ecx + 8]
mov esi, 0x40
mov dword [ebp - 0x10], edx
test edx, edx
je 0x40bd94
mov eax, dword [ecx + 4]
mov eax, dword [eax + edx*4 - 4]
movzx esi, word [eax + 8]
push esi
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 8]
push eax
push ebx
call fcn.0040c9c9
cmp al, 1
jne 0x40c1d6
cmp si, 0x4a
je 0x40c03d
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
mov eax, dword [ebp - 0x4c]
mov esi, dword [ebp - 8]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0xc], eax
jmp 0x40bc47
cmp bx, 0x39
ja 0x40bbcb
jmp 0x40bd46
dec eax
push 4
mov dword [edx], eax
call fcn.00420bfa
add esp, 4
mov dword [ebp - 0x10], eax
test eax, eax
je 0x40c2ba
mov dword [eax], 1
mov dword [ebp - 0x4c], eax
xor ecx, ecx
mov eax, 8
mov edx, 2
mul edx
seto cl
mov dword [ebp - 0x50], 8
neg ecx
or ecx, eax
push ecx
call fcn.00420581
mov edx, dword [ebp - 0x10]
mov ecx, eax
add esp, 4
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x58], ecx
jmp 0x40bd1e
inc esi
mov dword [ebp - 8], esi
cmp word [ebx + esi*2], 0x3d
lea ecx, [ebp - 0x48]
je 0x40c1b3
push 0x41
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
push 0x47
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
inc esi
mov dword [ebp - 8], esi
jmp 0x40bc47
push 0x48
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
inc esi
mov dword [ebp - 8], esi
jmp 0x40bc47
push 0x4e
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
inc esi
mov dword [ebp - 8], esi
jmp 0x40bc47
push 0x4f
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
inc esi
mov dword [ebp - 8], esi
jmp 0x40bc47
cmp eax, 0x41c2
jae 0x474a79
add eax, eax
push eax
call fcn.0040dab1
xor ecx, ecx
mov dword [ebp - 0x50], eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00420581
mov edx, eax
mov eax, dword [ebp - 0xc]
add esp, 4
mov dword [ebp - 0x18], edx
test eax, eax
je 0x40bf40
lea ecx, [edi*2 + 2]
push ecx
push eax
push edx
call fcn.00420590
mov ecx, dword [ebp - 0xc]
add esp, 0xc
push ecx
call fcn.004224f0
mov edx, dword [ebp - 0x18]
add esp, 4
mov ecx, edx
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x58], ecx
jmp 0x40bd5d
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 8]
push eax
push ebx
push dword [ebp + 8]
call fcn.0040ccc3
lea ecx, [ebp - 0x48]
test eax, eax
js 0x474b97
push 0x36
call fcn.0040c4a1
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x48]
call fcn.0040d953
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x58]
mov esi, dword [ebp - 8]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], ecx
jmp 0x40bc47
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40bc69
mov ecx, ebx
call fcn.00406ea2
push ebx
call fcn.00420c6e
add esp, 4
jmp 0x40bc69
push 0x49
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
inc esi
mov dword [ebp - 8], esi
cmp word [ebx + esi*2], 0x3d
je 0x40c132
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
push 0x4d
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
inc esi
mov dword [ebp - 8], esi
cmp word [ebx + esi*2], 0x3d
je 0x40c16d
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
push 0x4a
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
inc esi
mov dword [ebp - 8], esi
cmp word [ebx + esi*2], 0x3d
je 0x40c18c
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
cmp word [ebp - 0x40], 5
jne 0x40bdb9
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x10]
neg ecx
adc eax, 0
neg eax
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x44], eax
mov eax, dword [ecx + 4]
mov eax, dword [eax + edx*4 - 4]
mov edx, 0x49
mov word [eax + 8], dx
jmp 0x40bdbc
movzx eax, word [ebx + esi*2 + 2]
inc esi
mov dword [ebp - 8], esi
lea ecx, [ebp - 0x48]
sub eax, 0x3d
je 0x40c1ab
dec eax
je 0x40c151
push 0x43
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
push 0x4c
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
inc esi
mov dword [ebp - 8], esi
cmp word [ebx + esi*2], 0x3d
je 0x40c1b7
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
push 0x4b
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
inc esi
mov dword [ebp - 8], esi
cmp word [ebx + esi*2], 0x3d
je 0x47497f
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
inc esi
mov dword [ebp - 8], esi
cmp word [ebx + esi*2], 0x3d
lea ecx, [ebp - 0x48]
je 0x40c1af
push 0x42
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
mov edi, 0x32
jmp 0x40bcde
inc esi
push 0x52
lea ecx, [ebp - 0x48]
mov dword [ebp - 8], esi
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
push 0x44
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
inc esi
push eax
mov dword [ebp - 8], esi
call fcn.0040c370
jmp 0x40bc47
inc esi
push 0x56
lea ecx, [ebp - 0x48]
mov dword [ebp - 8], esi
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
inc esi
push 0x53
lea ecx, [ebp - 0x48]
mov dword [ebp - 8], esi
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
push 0x46
jmp 0x40c153
push 0x45
jmp 0x40c153
push 0x50
jmp 0x40c153
inc esi
push 0x55
lea ecx, [ebp - 0x48]
mov dword [ebp - 8], esi
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
jmp 0x40bc47
mov esi, dword [ebp - 8]
cmp edi, 0x2e
jne 0x47496b
inc esi
lea ecx, [ebp - 0x58]
mov dword [ebp - 8], esi
call fcn.0040d4dd
movzx eax, word [ebx + esi*2]
cmp ax, 0x5a
jbe 0x40c210
cmp ax, 0x61
jb 0x40c218
cmp ax, 0x7a
ja 0x40c218
push eax
lea ecx, [ebp - 0x58]
call fcn.0040cd3c
inc esi
jmp 0x40c1ee
cmp ax, 0x41
jae 0x40c204
jmp 0x40c1f8
cmp ax, 0x30
jae 0x47495c
cmp ax, 0x5f
je 0x40c204
cmp ax, 0x7f
ja 0x40c204
cmp dword [ebp - 0x54], 0
mov dword [ebp - 8], esi
je 0x474b5a
push 0x35
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x48]
call fcn.0040d953
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], ecx
jmp 0x40bc47
cmp edi, 0x7a
jbe 0x40bb85
jmp 0x40baf5
push 0x57
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
inc esi
mov dword [ebp - 8], esi
jmp 0x40bc47
push 0x58
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
inc esi
mov dword [ebp - 8], esi
jmp 0x40bc47
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x40be06
lea eax, [esi - 1]
push eax
jmp 0x474bea
push esi
jmp 0x474bea
xor eax, eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x4c], eax
jmp 0x40ba4e
push dword [ecx]
call fcn.00420c6e
mov eax, dword [ebp - 8]
add esp, 4
push dword [eax + 0xc]
call fcn.00420c6e
mov ecx, dword [ebp - 8]
add esp, 4
jmp 0x40bb49
cmp ax, 0x39
jbe 0x40c204
jmp 0x40c222
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x10], eax
jmp 0x40bae3
inc esi
push 0x54
lea ecx, [ebp - 0x48]
mov dword [ebp - 8], esi
call fcn.0040c4a1
jmp 0x40c0ed
push 0x51
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
inc esi
mov dword [ebp - 8], esi
jmp 0x40bc47
test esi, esi
jne case.0x40bb25.27
cmp word [ebx + 2], si
jne case.0x40bb25.27
mov eax, dword [ebp + 8]
cmp eax, dword [0x4c32f8]
jl case.0x40bb25.27
mov esi, 1
mov dword [ebp - 8], esi
jmp 0x40bc4a
mov ecx, dword [ebp - 0x48]
test ecx, ecx
je 0x40bcee
push ecx
call fcn.00406345
jmp 0x40bcee
cmp di, 0x10
jne 0x474a08
xorps xmm0, xmm0
movlpd qword [ebp - 0x48], xmm0
jmp 0x40bd09
cmp di, 0x20
jne 0x40bd02
xorps xmm0, xmm0
movsd qword [ebp - 0x48], xmm0
jmp 0x40bd09
dec eax
lea ecx, [ebp - 0x58]
mov dword [edx], eax
call fcn.0040b732
mov edi, dword [ebp - 0x54]
lea eax, [edi + 2]
push eax
call fcn.0040dab1
xor ecx, ecx
mov dword [ebp - 0x50], eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00420bfa
mov ecx, eax
add esp, 4
lea eax, [edi*2 + 2]
push eax
push dword [ebp - 0x58]
mov dword [ebp - 0xc], ecx
push ecx
call fcn.00420590
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0xc]
add esp, 0xc
mov dword [ebp - 0x10], edx
jmp 0x40bf48
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cmp eax, 0x2000000
jae 0x474ac4
shr eax, 0x1f
fnstcw word [ebp - 6]
addsd xmm0, qword [eax*8 + 0x4b7560]
movzx eax, word [ebp - 6]
or eax, 0xc00
mulsd xmm0, qword [0x4b3758]
mov dword [ebp - 0x18], eax
movsd qword [ebp - 0x2c], xmm0
fld qword [ebp - 0x2c]
fldcw word [ebp - 0x18]
fistp qword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
fldcw word [ebp - 6]
jmp 0x40bef1
cmp eax, 0x8000000
jae 0x474b07
shr eax, 0x1f
fnstcw word [ebp - 6]
addsd xmm0, qword [eax*8 + 0x4b7560]
movzx eax, word [ebp - 6]
or eax, 0xc00
mulsd xmm0, qword [0x4b3750]
mov dword [ebp - 0x18], eax
movsd qword [ebp - 0x34], xmm0
fld qword [ebp - 0x34]
fldcw word [ebp - 0x18]
fistp qword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
fldcw word [ebp - 6]
jmp 0x40bef1
shr eax, 0x1f
fnstcw word [ebp - 6]
addsd xmm0, qword [eax*8 + 0x4b7560]
movzx eax, word [ebp - 6]
or eax, 0xc00
mulsd xmm0, qword [0x4b3748]
mov dword [ebp - 0x18], eax
movsd qword [ebp - 0x3c], xmm0
fld qword [ebp - 0x3c]
fldcw word [ebp - 0x18]
fistp qword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
fldcw word [ebp - 6]
jmp 0x40bef1
push ecx
call fcn.00406345
jmp 0x40bc0b
mov dword [ebp - 0x48], 0
jmp 0x40bc38
lea eax, [esi - 1]
push eax
push 0x138b
push dword [ebp + 8]
call fcn.00443be6
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x58]
or esi, 0xffffffff
jmp 0x40bc91
push dword [ebp - 8]
push 0x138c
push dword [ebp + 8]
call fcn.00443be6
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x58]
or esi, 0xffffffff
jmp 0x40bc91
push 0x7f
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x58]
or esi, 0xffffffff
jmp 0x40bc91
push esi
push 0x1388
push dword [ebp + 8]
call fcn.00443be6
push 0x7f
lea ecx, [ebp - 0x48]
call fcn.0040c4a1
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x48]
push eax
call fcn.0040c370
mov eax, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x10]
or esi, 0xffffffff
jmp 0x40bc91
push 0x138b
push dword [ebp + 8]
call fcn.00443be6
mov eax, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x10]
or esi, 0xffffffff
jmp 0x40bc91
mov ecx, dword [ebp - 0x48]
test ecx, ecx
je 0x40bcb7
push ecx
call fcn.00406345
jmp 0x40bcb7