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

Disassembly:
push 0xffffffffffffffff
push 0x446803
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x50
push ebx
push ebp
push esi
push edi
mov edi, ecx
push 0x462a80
lea ecx, [esp + 0x2c]
call fcn.00438d9c
push 0x462a80
lea ecx, [esp + 0x28]
mov dword [esp + 0x6c], 0
call fcn.00438d9c
push 0x462a80
lea ecx, [esp + 0x24]
mov byte [esp + 0x6c], 1
call fcn.00438d9c
push 0x462a80
lea ecx, [esp + 0x14]
mov byte [esp + 0x6c], 2
call fcn.00438d9c
push 0x462a80
lea ecx, [esp + 0x20]
mov byte [esp + 0x6c], 3
call fcn.00438d9c
push 0x462a80
lea ecx, [esp + 0x1c]
mov byte [esp + 0x6c], 4
call fcn.00438d9c
push 0x462a80
lea ecx, [esp + 0x18]
mov byte [esp + 0x6c], 5
call fcn.00438d9c
mov esi, dword [esp + 0x70]
mov bl, 6
mov ecx, esi
mov byte [esp + 0x68], bl
call fcn.00401410
push str.FILE
mov ecx, esi
call fcn.004013a0
test al, al
je 0x40bc39
push ecx
mov ecx, esi
mov eax, esp
mov dword [esp + 0x48], esp
push str.name
push eax
call fcn.00408930
lea ecx, [esp + 0x74]
push ecx
mov ecx, edi
call fcn.0040d0d0
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x6c], 7
call fcn.00438e1b
lea ecx, [esp + 0x70]
mov byte [esp + 0x68], bl
call fcn.00438d2e
push ecx
mov ecx, esi
mov edx, esp
mov dword [esp + 0x48], esp
push str.location
push edx
call fcn.00408930
lea eax, [esp + 0x30]
mov ecx, edi
push eax
call fcn.0040d0d0
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x6c], 8
call fcn.00438e1b
lea ecx, [esp + 0x2c]
mov byte [esp + 0x68], bl
call fcn.00438d2e
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
push str.version
push ecx
mov ecx, esi
call fcn.00408930
lea edx, [esp + 0x34]
mov ecx, edi
push edx
call fcn.0040d0d0
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x6c], 9
call fcn.00438e1b
lea ecx, [esp + 0x30]
mov byte [esp + 0x68], bl
call fcn.00438d2e
push ecx
mov ecx, esi
mov eax, esp
mov dword [esp + 0x48], esp
push str.date
push eax
call fcn.00408930
lea ecx, [esp + 0x38]
push ecx
mov ecx, edi
call fcn.0040d0d0
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x6c], 0xa
call fcn.00438e1b
lea ecx, [esp + 0x34]
mov byte [esp + 0x68], bl
call fcn.00438d2e
push ecx
mov edx, esp
mov dword [esp + 0x48], esp
push str.check
push edx
mov ecx, esi
call fcn.00408930
lea eax, [esp + 0x3c]
mov ecx, edi
push eax
call fcn.0040d0d0
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x6c], 0xb
call fcn.00438e1b
lea ecx, [esp + 0x38]
mov byte [esp + 0x68], bl
call fcn.00438d2e
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
push str.section
push ecx
mov ecx, esi
call fcn.00408930
lea edx, [esp + 0x40]
mov ecx, edi
push edx
call fcn.0040d0d0
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x6c], 0xc
call fcn.00438e1b
lea ecx, [esp + 0x3c]
mov byte [esp + 0x68], bl
call fcn.00438d2e
push 0x1024
call fcn.00438a6f
mov ebp, eax
add esp, 4
mov dword [esp + 0x44], ebp
test ebp, ebp
mov byte [esp + 0x68], 0xd
je 0x40ba96
push ecx
lea eax, [esp + 0x18]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
call fcn.00438aa3
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x74], 0xe
call fcn.00438aa3
push ecx
lea eax, [esp + 0x28]
mov ecx, esp
mov dword [esp + 0x5c], esp
push eax
mov byte [esp + 0x78], 0xf
call fcn.00438aa3
push ecx
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x64], esp
push edx
mov byte [esp + 0x7c], 0x10
call fcn.00438aa3
push ecx
lea eax, [esp + 0x38]
mov ecx, esp
mov dword [esp + 0x6c], esp
push eax
mov byte [esp + 0x80], 0x11
call fcn.00438aa3
push ecx
lea edx, [esp + 0x40]
mov ecx, esp
mov dword [esp + 0x74], esp
push edx
mov byte [esp + 0x84], 0x12
call fcn.00438aa3
mov ecx, ebp
mov byte [esp + 0x80], 0xd
call fcn.004075e0
mov ebp, eax
jmp 0x40ba98
xor ebp, ebp
mov ecx, esi
mov byte [esp + 0x68], bl
call fcn.00401410
push str.ACTION
mov ecx, esi
call fcn.004013a0
test al, al
je 0x40bc04
push ecx
mov ecx, esi
mov eax, esp
mov dword [esp + 0x60], esp
push str.type
push eax
call fcn.00408930
lea ecx, [esp + 0x44]
push ecx
mov ecx, edi
call fcn.0040d0d0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x6c], 0x13
call fcn.00438e1b
lea ecx, [esp + 0x40]
mov byte [esp + 0x68], bl
call fcn.00438d2e
lea ecx, [esp + 0x10]
call fcn.004391f6
mov edx, dword [0x462b58]
mov eax, dword [esp + 0x10]
push edx
push eax
call fcn.0042a604
add esp, 8
test eax, eax
jne 0x40bb25
push ebp
push esi
mov ecx, edi
call fcn.0040c4d0
test al, al
je 0x40bcbc
mov ecx, dword [0x462b54]
mov edx, dword [esp + 0x10]
push ecx
push edx
call fcn.0042a604
add esp, 8
test eax, eax
jne 0x40bb4e
push ebp
push esi
mov ecx, edi
call fcn.0040c660
test al, al
je 0x40bcbc
mov eax, dword [0x462b50]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call fcn.0042a604
add esp, 8
test eax, eax
jne 0x40bb76
push ebp
push esi
mov ecx, edi
call fcn.0040c8c0
test al, al
je 0x40bcbc
mov edx, dword [0x462b4c]
mov eax, dword [esp + 0x10]
push edx
push eax
call fcn.0042a604
add esp, 8
test eax, eax
jne 0x40bb9f
push ebp
push esi
mov ecx, edi
call fcn.0040ca90
test al, al
je 0x40bcbc
mov ecx, dword [0x462b48]
mov edx, dword [esp + 0x10]
push ecx
push edx
call fcn.0042a604
add esp, 8
test eax, eax
jne 0x40bbc8
push ebp
push esi
mov ecx, edi
call fcn.0040cd00
test al, al
je 0x40bcbc
mov eax, dword [0x462b44]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call fcn.0042a604
add esp, 8
test eax, eax
jne 0x40bbf0
push ebp
push esi
mov ecx, edi
call fcn.0040ceb0
test al, al
je 0x40bcbc
push str.ACTION
mov ecx, esi
call fcn.004013a0
test al, al
jne 0x40bab7
mov ecx, esi
call fcn.00401450
mov edx, dword [edi + 0x2008]
push str.FILE
mov ecx, esi
mov dword [edi + edx*4 + 0x1008], ebp
mov ebp, dword [edi + 0x2008]
inc ebp
mov dword [edi + 0x2008], ebp
call fcn.004013a0
test al, al
jne 0x40b876
mov ecx, esi
call fcn.00401450
lea ecx, [esp + 0x14]
mov byte [esp + 0x68], 5
call fcn.00438d2e
lea ecx, [esp + 0x18]
mov byte [esp + 0x68], 4
call fcn.00438d2e
lea ecx, [esp + 0x1c]
mov byte [esp + 0x68], 3
call fcn.00438d2e
lea ecx, [esp + 0x10]
mov byte [esp + 0x68], 2
call fcn.00438d2e
lea ecx, [esp + 0x20]
mov byte [esp + 0x68], 1
call fcn.00438d2e
lea ecx, [esp + 0x24]
mov byte [esp + 0x68], 0
call fcn.00438d2e
lea ecx, [esp + 0x28]
mov dword [esp + 0x68], 0xffffffff
call fcn.00438d2e
mov al, 1
mov ecx, dword [esp + 0x60]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x5c
ret 4
lea ecx, [esp + 0x14]
mov byte [esp + 0x68], 5
call fcn.00438d2e
lea ecx, [esp + 0x18]
mov byte [esp + 0x68], 4
call fcn.00438d2e
lea ecx, [esp + 0x1c]
mov byte [esp + 0x68], 3
call fcn.00438d2e
lea ecx, [esp + 0x10]
mov byte [esp + 0x68], 2
call fcn.00438d2e
lea ecx, [esp + 0x20]
mov byte [esp + 0x68], 1
call fcn.00438d2e
lea ecx, [esp + 0x24]
mov byte [esp + 0x68], 0
call fcn.00438d2e
lea ecx, [esp + 0x28]
mov dword [esp + 0x68], 0xffffffff
call fcn.00438d2e
xor al, al
jmp 0x40bca7