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

Disassembly:
push ebp
push ebx
mov edx, 0x2c
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x406d90
call fcn.004310a0
push dword [esp + 0xd4]
call fcn.00430f40
mov edx, dword [esp + 0xc0]
lea ecx, [esp]
call fcn.0041e000
mov edx, dword [esp + 0xc4]
lea ecx, [esp + 4]
call fcn.0041e000
mov edx, dword [esp + 0xc8]
lea ecx, [esp + 8]
call fcn.0041e000
mov edx, dword [esp + 0xcc]
lea ecx, [esp + 0xc]
call fcn.0041e000
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
mov ebp, dword [esp + 0xbc]
mov edx, dword [ebp + 0xc]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x18]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0xbc]
mov edx, dword [ebp + 0x1c]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x1c]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0xbc]
mov edx, dword [ebp + 4]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x20]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0xbc]
mov edx, dword [ebp + 0x30]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x24]
push eax
call fcn.00430eb0
mov edx, dword [esp]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x434770
call fcn.00430f90
mov edx, dword [esp + 8]
call fcn.00430f90
lea eax, [esp + 0x28]
push eax
call fcn.00430eb0
mov edx, 0x434032
lea ecx, [esp + 0x28]
call fcn.0041e008
mov edx, 0x434032
lea ecx, [esp + 0x2c]
call fcn.0041e008
push 0x434388
push dword [esp + 0xc]
call fcn.0041e930
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], 1
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x34]
jl 0x406f94
call fcn.00430e40
push eax
push eax
push 0x434388
push dword [esp + 0x40]
push dword [esp + 0x18]
call fcn.0041e9c0
lea eax, [esp + 0x3c]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x2c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x3c]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
lea eax, [esp + 0x30]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x2c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x3c]
call fcn.00430f90
mov edx, str..CoInstallers
call fcn.00430f90
lea eax, [esp + 0x30]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x2c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x3c]
call fcn.00430f90
mov edx, str..services
call fcn.00430f90
lea eax, [esp + 0x30]
push eax
call fcn.00430eb0
inc dword [esp + 0x34]
jno 0x406ed5
call fcn.00430e40
push eax
push dword [esp + 0x18]
push str.ClassInstall32
push dword [esp + 0x30]
call fcn.0041214c
lea eax, [esp + 0x40]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x2c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.ClassInstall32
call fcn.00430f90
call fcn.00430e40
push eax
push eax
mov eax, dword [esp + 0x4c]
cdq
push edx
push eax
call fcn.0041e740
pop eax
mov edx, 0x4349fc
call fcn.00430f90
lea eax, [esp + 0x30]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x2c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.ClassInstall32
call fcn.00430f90
call fcn.00430e40
push eax
push eax
mov eax, dword [esp + 0x4c]
cdq
push edx
push eax
call fcn.0041e740
pop eax
mov edx, str..services
call fcn.00430f90
lea eax, [esp + 0x30]
push eax
call fcn.00430eb0
push dword [esp + 0x2c]
mov edx, 0x434032
pop ecx
call fcn.00431020
je 0x40704e
jmp 0x407858
push 0x4349fc
push dword [esp + 0x30]
call fcn.0041e4a0
mov dword [esp + 0x44], eax
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x4c]
dec ebx
push ebx
push dword [esp + 0x38]
call fcn.0041e7e0
lea eax, [esp + 0x4c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x4c]
inc ebx
push ebx
push dword [esp + 0x38]
call fcn.0041e8e0
lea eax, [esp + 0x30]
push eax
call fcn.00430eb0
mov dword [esp + 0x50], 2
mov dword [esp + 0x54], 1
lea edx, [esp + 0x4c]
push edx
push 0x438e9c
push 8
push 4
push 2
call fcn.0042eb86
lea edx, [esp + 0x4c]
push edx
push dword [esp + 0x4c]
push dword [esp + 0x2c]
call fcn.00405406
mov dword [esp + 0x58], eax
mov ebx, dword [esp + 0x58]
and ebx, ebx
jle 0x407853
mov dword [esp + 0x34], 1
mov eax, dword [esp + 0x58]
cmp eax, dword [esp + 0x34]
jl 0x407853
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push 3
mov eax, dword [esp + 0x60]
imul eax, eax, 0
mov ebp, eax
push ebp
mov eax, dword [esp + 0x48]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x5c]
push dword [ebp]
call fcn.0041332d
call fcn.00430e92
add dword [esp], edx
call fcn.0041e3c0
lea eax, [esp + 0x60]
push eax
call fcn.00430eb0
push dword [esp + 0x5c]
mov edx, str.copyfiles
pop ecx
call fcn.00431020
je 0x40721a
push 0x4344da
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x44]
and ebx, ebx
jle 0x4071da
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x4c]
dec ebx
push ebx
mov eax, dword [esp + 0x5c]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x58]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
lea eax, [ebp]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x28]
call fcn.00430e40
push eax
call fcn.00430f90
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
mov edx, dword [ebp]
call fcn.00430f90
mov edx, 0x434388
call fcn.00430f90
lea eax, [esp + 0x2c]
push eax
call fcn.00430eb0
push dword [esp + 0x5c]
mov edx, str.copyinf
pop ecx
call fcn.00431020
je 0x4074ba
push 0x4344da
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x44]
and ebx, ebx
jle 0x4072a5
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x4c]
dec ebx
push ebx
mov eax, dword [esp + 0x5c]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x58]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
lea eax, [ebp]
push eax
call fcn.00430eb0
push 0x434388
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
push dword [ebp]
call fcn.0041e930
mov ebx, eax
inc ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x60], 1
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x60]
jl 0x4074ba
call fcn.00430e40
push eax
push eax
push 0x434388
push dword [esp + 0x6c]
mov eax, dword [esp + 0x60]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x48]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x5c]
push dword [ebp]
call fcn.0041e9c0
lea eax, [esp + 0x68]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x43432e
push dword [esp + 0x70]
call fcn.0041f1e0
lea eax, [esp + 0x68]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 3
push dword [esp + 0x6c]
call fcn.0041332d
lea eax, [esp + 0x68]
push eax
call fcn.00430eb0
push dword [esp + 0x64]
mov edx, 0x434032
pop ecx
call fcn.00431020
je 0x40736e
jmp 0x4074b0
call fcn.00430e40
push eax
push dword [esp + 0x68]
push dword [esp + 0x20]
push dword [esp + 0x30]
call fcn.00404138
lea eax, [esp + 0x68]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x18]
push dword [esp + 0x6c]
push dword [esp + 0xc]
push dword [esp + 0x34]
call fcn.00409009
lea eax, [esp + 0x6c]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x68]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x434770
call fcn.00430f90
mov edx, dword [esp + 0x68]
call fcn.00430f90
lea eax, [esp + 0x6c]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0xbc]
mov edx, dword [ebp + 4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.inf_
call fcn.00430f90
mov edx, dword [esp + 0x68]
call fcn.00430f90
lea eax, [esp + 0x70]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push dword [esp + 0x70]
call fcn.0041e3c0
mov edx, 0x4349fc
call fcn.00430f90
call fcn.00430ff0
call fcn.00430e40
push eax
push eax
mov edx, dword [esp + 0x20]
mov ebp, dword [edx]
push dword [ebp]
call fcn.0041e3c0
call fcn.00430e92
add dword [esp], edx
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041e4a0
call fcn.00430f40
mov ebx, eax
and ebx, ebx
jne 0x4074b0
mov edx, dword [esp + 0x10]
mov ebp, dword [edx]
mov edx, dword [ebp]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x6c]
call fcn.00430f90
mov edx, 0x434388
call fcn.00430f90
mov edx, dword [esp + 0x70]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
lea eax, [ebp]
push eax
call fcn.00430eb0
inc dword [esp + 0x60]
jno 0x4072d6
push dword [esp + 0x5c]
mov edx, str.addservice
pop ecx
call fcn.00431020
je 0x407849
push 0x4344da
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x44]
and ebx, ebx
jle 0x407545
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x4c]
dec ebx
push ebx
mov eax, dword [esp + 0x5c]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x58]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
lea eax, [ebp]
push eax
call fcn.00430eb0
push 0x434388
mov eax, dword [esp + 0x54]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x3c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x50]
push dword [ebp]
call fcn.0041e930
mov ebx, eax
inc ebx
cmp ebx, 2
jle 0x407849
call fcn.00430e40
push eax
push eax
push 0x434388
push 3
mov eax, dword [esp + 0x60]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x48]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0x5c]
push dword [ebp]
call fcn.0041e9c0
lea eax, [esp + 0x74]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x43432e
push dword [esp + 0x7c]
call fcn.0041f1e0
lea eax, [esp + 0x74]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 3
push dword [esp + 0x78]
call fcn.0041332d
lea eax, [esp + 0x74]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x74]
push dword [esp + 0x20]
push dword [esp + 0x30]
call fcn.00404138
lea eax, [esp + 0x74]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 0x434032
push str.ServiceBinary
push dword [esp + 0x7c]
push dword [esp + 0x34]
call fcn.00412a3d
lea eax, [esp + 0x78]
push eax
call fcn.00430eb0
push dword [esp + 0x74]
mov edx, 0x434032
pop ecx
call fcn.00431020
jne 0x407849
push 0x4344da
push dword [esp + 0x78]
call fcn.0041e4a0
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x44]
and ebx, ebx
jle 0x407682
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x4c]
dec ebx
push ebx
push dword [esp + 0x80]
call fcn.0041e7e0
lea eax, [esp + 0x78]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 3
push dword [esp + 0x7c]
call fcn.0041332d
lea eax, [esp + 0x78]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x78]
push dword [esp + 0x20]
push dword [esp + 0x30]
call fcn.00404138
lea eax, [esp + 0x6c]
push eax
call fcn.00430eb0
push 1
push 0x434770
push dword [esp + 0x70]
call fcn.0040d867
mov dword [esp + 0x44], eax
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x4c]
inc ebx
push ebx
push dword [esp + 0x74]
call fcn.0041e8e0
lea eax, [esp + 0x7c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x18]
push dword [esp + 0x80]
push dword [esp + 0xc]
push dword [esp + 0x34]
call fcn.00409009
lea eax, [esp + 0x6c]
push eax
call fcn.00430eb0
push dword [esp + 0x68]
mov edx, 0x434032
pop ecx
call fcn.00431020
je 0x407736
jmp 0x407849
mov edx, dword [esp + 0x68]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x434770
call fcn.00430f90
mov edx, dword [esp + 0x7c]
call fcn.00430f90
lea eax, [esp + 0x6c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x78]
push dword [esp + 0x14]
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.00404e76
lea eax, [esp + 0x70]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x70]
push dword [esp + 0x20]
push dword [esp + 0x30]
call fcn.00404138
lea eax, [esp + 0x70]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push dword [esp + 0x84]
call fcn.0041e3c0
mov edx, 0x434388
call fcn.00430f90
call fcn.00430ff0
call fcn.00430e40
push eax
push eax
mov edx, dword [esp + 0x20]
mov ebp, dword [edx]
push dword [ebp]
call fcn.0041e3c0
call fcn.00430e92
add dword [esp], edx
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041e4a0
call fcn.00430f40
mov ebx, eax
and ebx, ebx
jne 0x407849
mov edx, dword [esp + 0x10]
mov ebp, dword [edx]
mov edx, dword [ebp]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x6c]
call fcn.00430f90
mov edx, 0x434388
call fcn.00430f90
mov edx, dword [esp + 0x70]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
lea eax, [ebp]
push eax
call fcn.00430eb0
inc dword [esp + 0x34]
jno 0x4070f8
jmp 0x407038
mov edx, str.DestinationDirs_
lea ecx, [esp + 0x7c]
call fcn.0041e008
mov edx, 0x434032
lea ecx, [esp + 0x80]
call fcn.0041e008
push 0x434388
push dword [esp + 0x2c]
call fcn.0041e930
mov dword [esp + 0x58], eax
mov dword [esp + 0x34], 1
mov eax, dword [esp + 0x58]
cmp eax, dword [esp + 0x34]
jl 0x407a87
call fcn.00430e40
push eax
push eax
push 0x434388
push dword [esp + 0x40]
push dword [esp + 0x38]
call fcn.0041e9c0
lea eax, [esp + 0x88]
push eax
call fcn.00430eb0
push 0x434518
push dword [esp + 0x88]
call fcn.0041e4a0
mov ebx, eax
and ebx, ebx
jne 0x4079a3
call fcn.00430e40
push eax
push 3
push dword [esp + 0x8c]
call fcn.0041332d
lea eax, [esp + 0x88]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov edx, 0x434388
call fcn.00430f90
call fcn.00430e40
push eax
push eax
push dword [esp + 0x94]
call fcn.0041e3c0
pop eax
mov edx, 0x434388
call fcn.00430f90
call fcn.00430ff0
call fcn.00430e40
push eax
push eax
push dword [esp + 0x8c]
call fcn.0041e3c0
call fcn.00430e92
add dword [esp], edx
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041e4a0
call fcn.00430f40
mov ebx, eax
and ebx, ebx
jne 0x40799e
mov edx, dword [esp + 0x7c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x88]
call fcn.00430f90
mov edx, 0x434388
call fcn.00430f90
lea eax, [esp + 0x80]
push eax
call fcn.00430eb0
jmp 0x407a7d
call fcn.00430e40
push eax
push eax
push 0x434518
push dword [esp + 0x90]
call fcn.0041f1e0
lea eax, [esp + 0x88]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 3
push dword [esp + 0x8c]
call fcn.0041332d
lea eax, [esp + 0x88]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push dword [esp + 0x90]
call fcn.0041e3c0
mov edx, 0x434388
call fcn.00430f90
call fcn.00430ff0
call fcn.00430e40
push eax
push eax
push dword [esp + 0x90]
call fcn.0041e3c0
call fcn.00430e92
add dword [esp], edx
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041e4a0
call fcn.00430f40
mov ebx, eax
and ebx, ebx
jne 0x407a7d
mov edx, dword [esp + 0x80]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x88]
call fcn.00430f90
mov edx, 0x434388
call fcn.00430f90
lea eax, [esp + 0x84]
push eax
call fcn.00430eb0
inc dword [esp + 0x34]
jno 0x407891
push 0x434388
push dword [esp + 0x80]
call fcn.0041e930
mov dword [esp + 0x58], eax
mov ebx, dword [esp + 0x58]
add ebx, 3
mov eax, ebx
inc eax
lea edx, [esp + 0x88]
push edx
push 0x438e9c
push 8
push eax
push 4
call fcn.0042eaf5
lea edx, [esp + 0x88]
push edx
push dword [esp + 0x80]
push dword [esp + 0x2c]
call fcn.004122ac
mov edx, dword [esp + 0x80]
call fcn.00430e40
push eax
call fcn.00430f90
mov ebp, dword [esp + 0x8c]
lea eax, [ebp + 0xc]
push eax
call fcn.00430eb0
push 0x4349fc
push dword [ebp]
call fcn.0041e930
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], 1
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x34]
jl 0x407ee8
mov ebx, dword [esp + 0x34]
add ebx, 2
mov ebp, dword [esp + 0x88]
shl ebx, 2
mov edx, dword [ebp + ebx]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x94]
push eax
call fcn.00430eb0
push dword [esp + 0x90]
mov edx, 0x434032
pop ecx
call fcn.00431020
je 0x407b6a
jmp 0x407ede
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x40]
mov ebp, dword [esp + 0x98]
push dword [ebp]
call fcn.0041e9c0
lea eax, [esp + 0x98]
push eax
call fcn.00430eb0
push 0x434500
push dword [esp + 0x98]
call fcn.0041e4a0
mov dword [esp + 0x44], eax
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x4c]
inc ebx
push ebx
push dword [esp + 0xa0]
call fcn.0041e8e0
lea eax, [esp + 0x9c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x9c]
push dword [esp + 0x20]
push dword [esp + 0x30]
call fcn.00404138
lea eax, [esp + 0x9c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x9c]
call fcn.00408b9a
lea eax, [esp + 0x9c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x9c]
push dword [esp + 0x14]
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.00404e76
lea eax, [esp + 0x9c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x43432e
push dword [esp + 0x9c]
call fcn.0041f1e0
lea eax, [esp + 0x94]
push eax
call fcn.00430eb0
push 0x4349fc
push dword [esp + 0x94]
call fcn.0041e930
mov dword [esp + 0x9c], eax
mov dword [esp + 0x60], 1
mov eax, dword [esp + 0x9c]
cmp eax, dword [esp + 0x60]
jl 0x407ede
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x6c]
push dword [esp + 0xa0]
call fcn.0041e9c0
lea eax, [esp + 0xa4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xa4]
push dword [esp + 0x20]
push dword [esp + 0x30]
call fcn.00404138
lea eax, [esp + 0xa4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434388
push 1
push dword [esp + 0xb0]
call fcn.0041e9c0
lea eax, [esp + 0xa8]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 3
push dword [esp + 0xac]
call fcn.0041332d
lea eax, [esp + 0xa8]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0xa4]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0xac]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434388
push 2
push dword [esp + 0xb0]
call fcn.0041e9c0
lea eax, [esp + 0x98]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 3
push dword [esp + 0x9c]
call fcn.0041332d
lea eax, [esp + 0x98]
push eax
call fcn.00430eb0
push dword [esp + 0x94]
mov edx, 0x434032
pop ecx
call fcn.00431020
jne 0x407dd6
mov edx, dword [esp + 0x94]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0xac]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x18]
push dword [esp + 0xb0]
push dword [esp + 0xc]
push dword [esp + 0x34]
call fcn.00409009
lea eax, [esp + 0xb0]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push dword [esp + 0xb4]
call fcn.0041e3c0
mov edx, 0x434388
call fcn.00430f90
call fcn.00430ff0
call fcn.00430e40
push eax
push eax
mov edx, dword [esp + 0x20]
mov ebp, dword [edx]
push dword [ebp]
call fcn.0041e3c0
call fcn.00430e92
add dword [esp], edx
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041e4a0
call fcn.00430f40
mov ebx, eax
and ebx, ebx
jne 0x407ed4
mov edx, dword [esp + 0x10]
mov ebp, dword [edx]
mov edx, dword [ebp]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0xb0]
call fcn.00430f90
mov edx, 0x434770
call fcn.00430f90
mov edx, dword [esp + 0xac]
call fcn.00430f90
mov edx, 0x434388
call fcn.00430f90
mov edx, dword [esp + 0x9c]
call fcn.00430f90
mov edx, 0x434770
call fcn.00430f90
mov edx, dword [esp + 0xa8]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
lea eax, [ebp]
push eax
call fcn.00430eb0
inc dword [esp + 0x60]
jno 0x407c87
inc dword [esp + 0x34]
jno 0x407b16
call fcn.00431140
mov word [eax], 0
push dword [esp + 0xc]
call fcn.00431170
push dword [esp + 0x38]
call fcn.00431170
push dword [esp + 0x94]
call fcn.00431170
push dword [esp + 0x48]
call fcn.00431170
push dword [esp + 0x70]
call fcn.00431170
push dword [esp + 0x3c]
call fcn.00431170
push dword [esp + 0x1c]
call fcn.00431170
push dword [esp + 0x20]
call fcn.00431170
push dword [esp + 0x90]
call fcn.00431170
push dword [esp + 0xa0]
call fcn.00431170
push dword [esp + 0xac]
call fcn.00431170
push dword [esp + 0x14]
call fcn.00431170
push dword [esp + 0x98]
call fcn.00431170
push dword [esp + 0x2c]
call fcn.00431170
push dword [esp + 4]
call fcn.00431170
push dword [esp + 0x28]
call fcn.00431170
push dword [esp + 0x18]
call fcn.00431170
push dword [esp + 0xa8]
call fcn.00431170
push dword [esp + 0x6c]
call fcn.00431170
push dword [esp + 0x84]
call fcn.00431170
push dword [esp + 0x80]
call fcn.00431170
push dword [esp + 0xa4]
call fcn.00431170
push dword [esp + 0x78]
call fcn.00431170
push dword [esp + 0x24]
call fcn.00431170
push dword [esp + 0x68]
call fcn.00431170
push dword [esp + 8]
call fcn.00431170
push dword [esp]
call fcn.00431170
push dword [esp + 0x64]
call fcn.00431170
push dword [esp + 0x5c]
call fcn.00431170
push dword [esp + 0x7c]
call fcn.00431170
push dword [esp + 0x74]
call fcn.00431170
push eax
push dword [esp + 0x50]
call fcn.0042ee4d
push dword [esp + 0x8c]
call fcn.0042ee4d
pop eax
add esp, 0xb0
pop ebx
pop ebp
ret 0x18