Function at 0x40bf79
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
mov edx, 0x20
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x40bf81
mov edx, dword [esp + 0x90]
lea ecx, [esp]
call fcn.00421000
mov dword [esp + 4], 0xff
mov edx, 0x4cf020
lea ecx, [esp + 8]
call fcn.00421008
push 0x100
push 1
call fcn.0042004e
push dword [0xfacbf4]
mov eax, 0x4cf90a
push eax
mov eax, 0x4d3790
push eax
mov eax, 0x4d5084
push eax
call fcn.0041b675
lea eax, [esp + 0x10]
push eax
call fcn.00472230
push dword [esp + 0xc]
mov edx, 0x4cf020
pop ecx
call fcn.00421330
je 0x40c021
push dword [0xfacbf4]
mov eax, 0x4cf90a
push eax
mov eax, str.VersionToReport
push eax
mov eax, 0x4d439e
push eax
call fcn.0041b675
lea eax, [esp + 0x10]
push eax
call fcn.00472230
push dword [esp + 0xc]
mov edx, 0x4cf020
pop ecx
call fcn.00421330
jne 0x40c10b
push dword [0xfacbf4]
push dword [0xfacbf4]
push 2
push 1
push dword [esp + 0x1c]
call fcn.00421ee0
lea eax, [esp + 0x10]
push eax
call fcn.00472230
push dword [esp + 0xc]
mov edx, 0x4cfcce
pop ecx
call fcn.00421330
je 0x40c0b1
mov edx, 0x4cfcce
lea ecx, [0xf332e0]
call fcn.00421008
push dword [0xfacbf4]
mov eax, 0x4cf90a
push eax
mov eax, 0x4d4bd0
push eax
mov eax, 0x4d5084
push eax
call fcn.0041b675
lea eax, [esp + 0xc]
push eax
call fcn.00472230
mov dword [esp + 4], 1
jmp 0x40c10b
push dword [esp + 0xc]
mov edx, 0x4cfc0e
pop ecx
call fcn.00421330
je 0x40c103
mov edx, 0x4cfc0e
lea ecx, [0xf332e0]
call fcn.00421008
push dword [0xfacbf4]
mov eax, 0x4cf90a
push eax
mov eax, 0x4d4bd0
push eax
mov eax, 0x4d439e
push eax
call fcn.0041b675
lea eax, [esp + 0xc]
push eax
call fcn.00472230
mov dword [esp + 4], 1
jmp 0x40c10b
mov dword [esp + 4], 0
push dword [esp + 8]
mov edx, 0x4cf020
pop ecx
call fcn.00421330
jne 0x40cd95
lea edx, [esp + 0x10]
push edx
push 0x4d8d04
push 8
push 1
push 4
call fcn.0046be1f
push dword [esp + 0xc]
mov edx, 0x4cfcce
pop ecx
call fcn.00421330
je 0x40c176
push dword [0xfacbf4]
mov eax, 0x4cf90a
push eax
mov eax, 0x4d61fe
push eax
mov eax, 0x4d1f8a
push eax
call fcn.0041b675
lea eax, [esp + 0x1c]
push eax
call fcn.00472230
mov eax, 0x4cf800
push eax
push dword [esp + 0xc]
call fcn.00421e80
mov dword [esp + 0x1c], eax
mov ebx, dword [esp + 0x1c]
and ebx, ebx
jle 0x40c1e2
push dword [0xfacbf4]
push dword [0xfacbf4]
mov ebx, dword [esp + 0x24]
dec ebx
push ebx
push 1
push dword [esp + 0x18]
call fcn.00421ee0
lea eax, [esp + 0x24]
push eax
call fcn.00472230
push dword [0xfacbf4]
push dword [0xfacbf4]
mov ebx, dword [esp + 0x24]
inc ebx
push ebx
push dword [esp + 0x14]
call fcn.00421f70
lea eax, [esp + 0xc]
push eax
call fcn.00472230
jmp 0x40c20a
mov edx, dword [esp + 8]
push dword [0xfacbf4]
push edx
call fcn.004721d0
lea eax, [esp + 0x24]
push eax
call fcn.00472230
mov edx, 0x4cf020
lea ecx, [esp + 8]
call fcn.00421008
push dword [esp + 0x20]
mov edx, 0x4cf020
pop ecx
call fcn.00421330
je 0x40c220
jmp 0x40c41d
mov dword [esp + 0x24], 0
jmp 0x40c22a
push dword [0xf33994]
call fcn.0046bf80
cmp eax, dword [esp + 0x24]
jl 0x40c418
push dword [esp + 0xc]
mov edx, 0x4cfcce
pop ecx
call fcn.00421330
je 0x40c2fb
push dword [0xfacbf4]
mov eax, 0x4cf90a
push eax
mov eax, 0x4d1f46
push eax
push dword [0xfacbf4]
mov edx, 0x4d2e84
push edx
call fcn.004721d0
mov edx, dword [esp + 0x28]
push edx
call fcn.004721d0
mov edx, 0x4cffc0
push edx
call fcn.004721d0
mov edx, dword [esp + 0x30]
push edx
call fcn.004721d0
mov edx, 0x4cf90a
push edx
call fcn.004721d0
mov edx, dword [esp + 0x1c]
push edx
call fcn.004721d0
mov edx, 0x4cffc0
push edx
call fcn.004721d0
mov edx, dword [0xf33998]
imul edx, dword [esp + 0x34]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0xf33994]
mov edx, dword [ebp]
push edx
call fcn.004721d0
mov edx, dword [0xf2ff5c]
add dword [esp], edx
call fcn.0041b675
lea eax, [esp + 0x2c]
push eax
call fcn.00472230
jmp 0x40c384
push dword [esp + 0xc]
mov edx, 0x4cfc0e
pop ecx
call fcn.00421330
je 0x40c384
push dword [0xfacbf4]
mov eax, 0x4cf90a
push eax
mov eax, 0x4d1f46
push eax
push dword [0xfacbf4]
mov edx, 0x4d7302
push edx
call fcn.004721d0
mov edx, dword [esp + 0x30]
push edx
call fcn.004721d0
mov edx, 0x4cffc0
push edx
call fcn.004721d0
mov edx, dword [0xf33998]
imul edx, dword [esp + 0x34]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0xf33994]
mov edx, dword [ebp]
push edx
call fcn.004721d0
mov edx, dword [0xf2ff5c]
add dword [esp], edx
call fcn.0041b675
lea eax, [esp + 0x2c]
push eax
call fcn.00472230
push dword [esp + 0x28]
mov edx, 0x4cf020
pop ecx
call fcn.00421330
jne 0x40c40e
mov edx, dword [esp + 0x20]
push dword [0xfacbf4]
push edx
call fcn.004721d0
mov edx, 0x4cf5f0
push edx
call fcn.004721d0
mov edx, dword [0xf33998]
imul edx, dword [esp + 0x28]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0xf33994]
mov edx, dword [ebp]
push edx
call fcn.004721d0
push dword [esp + 0x14]
call fcn.0046bf80
mov ebx, eax
mov ebp, dword [esp + 0x14]
shl ebx, 2
lea eax, [ebp + ebx]
push eax
call fcn.00472230
push dword [esp + 0x10]
call fcn.0046bf80
mov ebx, eax
inc ebx
mov eax, ebx
inc eax
lea edx, [esp + 0x10]
push edx
push eax
call fcn.0046bfdf
inc dword [esp + 0x24]
jno 0x40c22a
jmp 0x40c176
push dword [esp + 0xc]
mov edx, 0x4cfcce
pop ecx
call fcn.00421330
je 0x40c43e
mov edx, 0x4d5194
lea ecx, [esp + 0x2c]
call fcn.00421008
jmp 0x40c45d
push dword [esp + 0xc]
mov edx, 0x4cfc0e
pop ecx
call fcn.00421330
je 0x40c45d
mov edx, 0x4d3374
lea ecx, [esp + 0x2c]
call fcn.00421008
mov dword [esp + 0x30], 0x122
mov dword [esp + 0x34], 0x100
push dword [0xf33450]
call fcn.00466fb1
mov ebx, eax
add ebx, 0x4b
mov dword [esp + 0x38], ebx
push dword [0xf33450]
call fcn.00466f27
mov ebx, eax
add ebx, 0x78
mov dword [esp + 0x3c], ebx
push 4
mov eax, 0x4d2524
push eax
push dword [esp + 0x3c]
push dword [esp + 0x3c]
push dword [esp + 0x4c]
push dword [esp + 0x4c]
push 0xffffffff
call fcn.00466b4b
mov dword [esp + 0x40], eax
push 1
push 0xf0
mov eax, 0x4d7cbc
push eax
push 0xa0
push 0x10c
push 0xc
push 0xa
push 0xffffffff
call fcn.0046284a
mov dword [esp + 0x44], eax
mov eax, 0x4d84d4
push eax
push 0x19
push 0x64
push 0xd8
push 0x16
push 0xffffffff
call fcn.00461ad4
mov dword [esp + 0x48], eax
mov eax, 0x4d16e8
push eax
push 0x19
push 0x64
push 0xd8
push 0xa8
push 0xffffffff
call fcn.00461ad4
mov dword [esp + 0x4c], eax
mov eax, 0x4d7f3c
push eax
push 0x16
push 0xa8
push 0xb4
push 0x42
push 0xffffffff
call fcn.00461d5c
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], 0
jmp 0x40c572
push dword [esp + 0x10]
call fcn.0046bf80
cmp eax, dword [esp + 0x54]
jl 0x40c612
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x10]
shl ebx, 2
push dword [ebp + ebx]
mov edx, 0x4cf020
pop ecx
call fcn.00421330
jne 0x40c608
push dword [0xfacbf4]
mov edx, dword [esp + 0x30]
push dword [0xfacbf4]
push edx
call fcn.004721d0
push dword [0xfacbf4]
push dword [0xfacbf4]
push 1
mov eax, 0x4d41b6
push eax
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x28]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00422660
pop eax
add dword [0xfacbf4], 2
push 0xffffffff
push dword [esp + 0x50]
mov edx, dword [0xf2ff5c]
add dword [esp + 8], edx
call fcn.00460bba
pop dword [0xfacbf4]
inc dword [esp + 0x54]
jno 0x40c572
call fcn.00466b27
mov dword [esp + 0x58], eax
cmp dword [esp + 0x58], 0
je 0x40c7ab
call fcn.00469d7c
push eax
mov ebx, dword [esp + 0x44]
cmp ebx, dword [esp]
jne 0x40c7a8
push dword [esp + 0x5c]
mov ebx, 0x332c
cmp ebx, dword [esp]
jne 0x40c7a7
call fcn.0046a09e
push eax
mov ebx, dword [esp + 0x5c]
cmp ebx, dword [esp]
jne 0x40c778
push dword [esp + 0x5c]
call fcn.0045fda6
mov ebx, eax
cmp ebx, 1
jne 0x40c6b5
mov dword [esp + 0x68], 0
jmp 0x40c678
push dword [esp + 0x50]
call fcn.00464dc9
mov ebx, eax
dec ebx
cmp ebx, dword [esp + 0x68]
jl 0x40c6a2
push 2
push dword [esp + 0x6c]
push dword [esp + 0x58]
call fcn.00464e96
inc dword [esp + 0x68]
jno 0x40c678
push 1
push dword [esp + 0x54]
call fcn.0045fc8a
jmp 0x40c776
push 0
push dword [esp + 0x54]
call fcn.0045fc8a
push dword [esp + 0x50]
call fcn.00464e73
mov dword [esp + 0x60], 0
jmp 0x40c6d6
push dword [esp + 0x1c]
call fcn.0046bf80
cmp eax, dword [esp + 0x60]
jl 0x40c776
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x1c]
shl ebx, 2
push dword [ebp + ebx]
mov edx, 0x4cf020
pop ecx
call fcn.00421330
jne 0x40c76c
push dword [0xfacbf4]
mov edx, dword [esp + 0x3c]
push dword [0xfacbf4]
push edx
call fcn.004721d0
push dword [0xfacbf4]
push dword [0xfacbf4]
push 1
mov eax, 0x4d41b6
push eax
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x34]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00422660
pop eax
add dword [0xfacbf4], 2
push 0xffffffff
push dword [esp + 0x5c]
mov edx, dword [0xf2ff5c]
add dword [esp + 8], edx
call fcn.00460bba
pop dword [0xfacbf4]
inc dword [esp + 0x60]
jno 0x40c6d6
jmp 0x40c7a6
mov ebx, dword [esp + 0x54]
cmp ebx, dword [esp]
jne 0x40c790
mov dword [esp + 0x6c], 6
add esp, 0xc
jmp 0x40c7b9
mov ebx, dword [esp + 0x58]
cmp ebx, dword [esp]
jne 0x40c7a6
mov dword [esp + 0x6c], 7
add esp, 0xc
jmp 0x40c7b9
pop eax
pop eax
pop eax
jmp 0x40c7b4
push dword [esp + 0x40]
call fcn.00466fbf
jmp 0x40c612
mov dword [esp + 0x64], 0
mov dword [esp + 0x5c], 0
jmp 0x40c7cb
push dword [esp + 0x44]
call fcn.00464dc9
mov ebx, eax
dec ebx
cmp ebx, dword [esp + 0x5c]
jl 0x40c801
push dword [esp + 0x5c]
push dword [esp + 0x48]
call fcn.00464e42
mov ebx, eax
cmp ebx, 2
jne 0x40c7fb
mov dword [esp + 0x64], 1
jmp 0x40c801
inc dword [esp + 0x5c]
jno 0x40c7cb
mov ebx, dword [esp + 0x60]
cmp ebx, 6
jne 0x40c819
mov ebx, dword [esp + 0x64]
and ebx, ebx
jle 0x40c819
mov eax, 1
jmp 0x40c81b
xor eax, eax
and eax, eax
je 0x40cd82
push dword [esp + 0x50]
call fcn.0045fda6
mov ebx, eax
cmp ebx, 1
jne 0x40c94f
push dword [0xfacbf4]
mov edx, dword [esp + 4]
push dword [0xfacbf4]
push edx
call fcn.004721d0
mov edx, 0x4cf268
push edx
call fcn.004721d0
mov edx, dword [0xf2ff5c]
add dword [esp], edx
call fcn.00467d3d
pop dword [0xfacbf4]
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jg 0x40c880
jl 0x40c87c
cmp ebx, 0
ja 0x40c880
xor eax, eax
jmp 0x40c885
mov eax, 1
or eax, eax
je 0x40c8c3
push dword [0xfacbf4]
push 2
mov edx, dword [esp + 8]
push dword [0xfacbf4]
push edx
call fcn.004721d0
mov edx, 0x4cf268
push edx
call fcn.004721d0
mov edx, dword [0xf2ff5c]
add dword [esp], edx
call fcn.00468335
pop dword [0xfacbf4]
push dword [0xfacbf4]
mov edx, dword [esp + 4]
push dword [0xfacbf4]
push edx
call fcn.004721d0
mov edx, 0x4cf268
push edx
call fcn.004721d0
add dword [0xfacbf4], 2
push 0x70
mov edx, dword [0xf2ff5c]
add dword [esp + 4], edx
call fcn.00468b80
pop dword [0xfacbf4]
mov eax, 0x4d4d64
push eax
push 0x70
call fcn.00469050
mov eax, 0x4d70be
push eax
push 0x70
call fcn.00469050
mov eax, 0x4d0a48
push eax
push 0x70
call fcn.00469050
push 0x70
call fcn.004688d0
mov eax, 0x4d5f74
push eax
call fcn.00413738
jmp 0x40cd78
mov dword [esp + 0x68], 0
mov dword [esp + 0x5c], 0
jmp 0x40c961
push dword [esp + 0x44]
call fcn.00464dc9
mov ebx, eax
dec ebx
cmp ebx, dword [esp + 0x5c]
jl 0x40c995
push dword [esp + 0x5c]
push dword [esp + 0x48]
call fcn.00464e42
mov ebx, eax
cmp ebx, 2
jne 0x40c98f
mov dword [esp + 0x68], 1
inc dword [esp + 0x5c]
jno 0x40c961
mov ebx, dword [esp + 0x68]
and ebx, ebx
jle 0x40cd78
push dword [0xfacbf4]
mov edx, dword [esp + 4]
push dword [0xfacbf4]
push edx
call fcn.004721d0
mov edx, 0x4cf268
push edx
call fcn.004721d0
mov edx, dword [0xf2ff5c]
add dword [esp], edx
call fcn.00467d3d
pop dword [0xfacbf4]
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jg 0x40c9ea
jl 0x40c9e6
cmp ebx, 0
ja 0x40c9ea
xor eax, eax
jmp 0x40c9ef
mov eax, 1
or eax, eax
je 0x40ca2d
push dword [0xfacbf4]
push 2
mov edx, dword [esp + 8]
push dword [0xfacbf4]
push edx
call fcn.004721d0
mov edx, 0x4cf268
push edx
call fcn.004721d0
mov edx, dword [0xf2ff5c]
add dword [esp], edx
call fcn.00468335
pop dword [0xfacbf4]
push dword [0xfacbf4]
mov edx, dword [esp + 4]
push dword [0xfacbf4]
push edx
call fcn.004721d0
mov edx, 0x4cf268
push edx
call fcn.004721d0
add dword [0xfacbf4], 2
push 0x70
mov edx, dword [0xf2ff5c]
add dword [esp + 4], edx
call fcn.00468b80
pop dword [0xfacbf4]
mov eax, 0x4d4d64
push eax
push 0x70
call fcn.00469050
mov eax, 0x4d1754
push eax
push 0x70
call fcn.00469050
mov dword [esp + 0x5c], 0
jmp 0x40ca99
push dword [esp + 0x44]
call fcn.00464dc9
mov ebx, eax
dec ebx
cmp ebx, dword [esp + 0x5c]
jl 0x40cd4e
push dword [esp + 0x5c]
push dword [esp + 0x48]
call fcn.00464e42
mov ebx, eax
cmp ebx, 2
jne 0x40cd44
mov eax, 0x4cf5f0
push eax
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x14]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00421e80
mov dword [esp + 0x1c], eax
push dword [0xfacbf4]
push dword [0xfacbf4]
mov ebx, dword [esp + 0x24]
dec ebx
push ebx
push 1
mov ebx, dword [esp + 0x6c]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00421ee0
lea eax, [esp + 0x70]
push eax
call fcn.00472230
push dword [0xfacbf4]
push dword [0xfacbf4]
mov ebx, dword [esp + 0x24]
inc ebx
push ebx
mov ebx, dword [esp + 0x68]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00421f70
lea eax, [esp + 0x74]
push eax
call fcn.00472230
push dword [0xfacbf4]
push dword [0xfacbf4]
mov edx, 0x4d3172
push edx
call fcn.004721d0
mov edx, dword [esp + 0x74]
push edx
call fcn.004721d0
mov edx, 0x4d0a6a
push edx
call fcn.004721d0
add dword [0xfacbf4], 2
push 0x70
mov edx, dword [0xf2ff5c]
add dword [esp + 4], edx
call fcn.00469050
pop dword [0xfacbf4]
push dword [0xfacbf4]
push dword [0xfacbf4]
mov edx, 0x4d3e88
push edx
call fcn.004721d0
mov edx, dword [esp + 0x78]
push edx
call fcn.004721d0
mov edx, 0x4d6226
push edx
call fcn.004721d0
add dword [0xfacbf4], 2
push 0x70
mov edx, dword [0xf2ff5c]
add dword [esp + 4], edx
call fcn.00469050
pop dword [0xfacbf4]
mov ebx, dword [esp + 0x5c]
inc ebx
mov dword [esp + 0x74], ebx
jmp 0x40cbe7
push dword [esp + 0x10]
call fcn.0046bf80
cmp eax, dword [esp + 0x74]
jl 0x40cd12
mov eax, 0x4cf5f0
push eax
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x14]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00421e80
mov dword [esp + 0x1c], eax
push dword [0xfacbf4]
push dword [0xfacbf4]
mov ebx, dword [esp + 0x24]
dec ebx
push ebx
push 1
mov ebx, dword [esp + 0x84]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00421ee0
lea eax, [esp + 0x7c]
push eax
call fcn.00472230
push dword [0xfacbf4]
push dword [0xfacbf4]
mov ebx, dword [esp + 0x24]
inc ebx
push ebx
mov ebx, dword [esp + 0x80]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00421f70
lea eax, [esp + 0x80]
push eax
call fcn.00472230
push dword [esp + 0x6c]
mov edx, dword [esp + 0x7c]
pop ecx
call fcn.00421330
je 0x40cca9
push dword [esp + 0x74]
push dword [esp + 0x48]
call fcn.00464e42
mov ebx, eax
cmp ebx, 2
jne 0x40cca9
mov eax, 1
jmp 0x40ccab
xor eax, eax
and eax, eax
je 0x40cd08
push dword [0xfacbf4]
push dword [0xfacbf4]
mov edx, 0x4d3e88
push edx
call fcn.004721d0
mov edx, dword [esp + 0x84]
push edx
call fcn.004721d0
mov edx, 0x4d6226
push edx
call fcn.004721d0
add dword [0xfacbf4], 2
push 0x70
mov edx, dword [0xf2ff5c]
add dword [esp + 4], edx
call fcn.00469050
pop dword [0xfacbf4]
mov ebx, dword [esp + 0x5c]
inc ebx
mov dword [esp + 0x5c], ebx
inc dword [esp + 0x74]
jno 0x40cbe7
mov edx, 0x4cf020
lea ecx, [esp + 0x78]
call fcn.00421008
mov eax, 0x4d7f6a
push eax
push 0x70
call fcn.00469050
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x10]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00413738
inc dword [esp + 0x5c]
jno 0x40ca99
mov eax, 0x4d48ca
push eax
push 0x70
call fcn.00469050
mov eax, 0x4d0a48
push eax
push 0x70
call fcn.00469050
push 0x70
call fcn.004688d0
mov dword [esp + 4], 1
jmp 0x40cd8a
mov dword [esp + 4], 0
push dword [esp + 0x40]
call fcn.004669a3
jmp 0x40cd9d
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
jmp 0x40cda5
push dword [esp + 0x20]
call fcn.004722b0
push dword [esp + 0x28]
call fcn.004722b0
push dword [esp + 0x7c]
call fcn.004722b0
push dword [esp + 0x78]
call fcn.004722b0
push dword [esp + 0xc]
call fcn.004722b0
push dword [esp]
call fcn.004722b0
push dword [esp + 0x18]
call fcn.004722b0
push dword [esp + 0x2c]
call fcn.004722b0
push dword [esp + 0x70]
call fcn.004722b0
push dword [esp + 8]
call fcn.004722b0
push dword [esp + 0x6c]
call fcn.004722b0
push eax
push dword [esp + 0x14]
call fcn.0046bf93
pop eax
add esp, 0x80
pop edi
pop ebx
pop ebp
ret 4