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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x445037
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x458220]
xor eax, esp
mov dword [esp + 0x50], eax
push ebx
push esi
push edi
mov eax, dword [0x458220]
xor eax, esp
push eax
lea eax, [esp + 0x68]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
push dword [ebp + 8]
mov edi, ecx
mov dword [esp + 0x24], eax
lea eax, [edi - 8]
mov dword [esp + 0x18], edi
call fcn.0041331f
xor esi, esi
cmp dword [ebp + 0xc], esi
mov ebx, eax
mov byte [esp + 0x10], 0
je 0x412db9
jle 0x412d88
cmp dword [ebp + 0xc], 4
jle 0x412dbe
lea esi, [ebx + 0x58]
call fcn.004144ee
and dword [ebx + 0x5c], 0
mov eax, 0x80004005
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x50]
xor ecx, esp
call fcn.00434390
mov esp, ebp
pop ebp
ret 0xc
mov byte [esp + 0x10], 1
cmp dword [ebx + 0x5c], esi
je 0x412ec2
lea eax, [ebx + 0x58]
call fcn.00433fe2
test al, al
je 0x412ec2
mov cl, byte [edi + 0x4c]
test cl, cl
jne 0x412dec
cmp byte [edi + 0x4e], cl
jne 0x412dec
cmp byte [edi + 0x4d], cl
je 0x412e87
mov eax, dword [ebx + 0x60]
mov dword [esp + 0x34], eax
mov eax, dword [ebx + 0x64]
mov dword [esp + 0x38], eax
mov eax, dword [ebx + 0x68]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x6c]
mov dword [esp + 0x30], eax
mov eax, dword [ebx + 0x70]
mov dword [esp + 0x24], eax
mov eax, dword [ebx + 0x74]
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x8c]
mov dword [esp + 0x3c], eax
mov eax, dword [edi + 0x90]
mov dword [esp + 0x40], eax
mov al, byte [edi + 0x4e]
test al, al
je 0x412e40
cmp byte [ebx + 0x82], 0
je 0x412e40
lea esi, [esp + 0x24]
jmp 0x412e4c
neg al
lea edx, [esp + 0x3c]
sbb eax, eax
and eax, edx
mov esi, eax
cmp byte [edi + 0x4d], 0
je 0x412e61
cmp byte [ebx + 0x81], 0
je 0x412e61
lea edx, [esp + 0x2c]
jmp 0x412e63
xor edx, edx
test cl, cl
je 0x412e76
cmp byte [ebx + 0x80], 0
je 0x412e76
lea ecx, [esp + 0x34]
jmp 0x412e78
xor ecx, ecx
mov eax, dword [ebx + 0x5c]
push esi
push edx
push ecx
push dword [eax + 0x18]
call dword [sym.imp.KERNEL32.dll_SetFileTime]
mov ecx, dword [ebx + 0x5c]
mov eax, dword [ecx]
call dword [eax + 8]
cmp byte [esp + 0x10], 0
mov dword [ebx + 0x50], eax
mov dword [ebx + 0x54], edx
jne 0x412ea4
mov ecx, dword [ebx + 0x5c]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov esi, dword [ebx + 0x5c]
call fcn.0042cb60
test eax, eax
jne 0x412d99
lea esi, [ebx + 0x58]
call fcn.004144ee
and dword [ebx + 0x5c], 0
xor esi, esi
mov ecx, dword [ebx + 0x50]
lea eax, [edi + 0xd8]
add dword [eax], ecx
mov ecx, dword [ebx + 0x54]
adc dword [eax + 4], ecx
cmp byte [ebx + 0x84], 0
lea eax, [edi + 0xc8]
jne 0x412ee8
lea eax, [edi + 0xd0]
add dword [eax], 1
adc dword [eax + 4], esi
cmp byte [ebx + 0x48], 0
je 0x412f0f
cmp byte [ebx + 0x83], 0
je 0x412f0f
mov eax, dword [ebx + 0x7c]
mov ecx, dword [ebx + 0x78]
mov dword [esp + 0x1c], eax
lea eax, [ebx + 0x2c]
call fcn.0040faf0
mov dword [esp + 0x18], esi
lea esi, [edi + 0x14]
mov eax, esi
call fcn.00433fe2
test al, al
je 0x412f4b
mov eax, esi
call fcn.00429659
push dword [esp + 0x20]
movzx ecx, byte [ebx + 0x49]
mov edx, dword [eax]
push ecx
push dword [ebp + 0xc]
mov ecx, eax
push dword [ebp + 8]
call dword [edx + 0x28]
test eax, eax
mov dword [esp + 0x18], eax
je 0x412f4b
jmp 0x412d99
cmp byte [esp + 0x10], 0
jne 0x412f81
cmp byte [edi + 0x2c], 0
jne 0x412f81
lea esi, [ebx + 0x2c]
push esi
call fcn.0040d4f0
test al, al
pop ecx
je 0x412f81
push esi
call fcn.0040fb60
test al, al
pop ecx
jne 0x412f81
push esi
add edi, 0x110
call fcn.004139b5
mov edi, dword [esp + 0x14]
lea eax, [ebx + 0x2c]
lea esi, [esp + 0x44]
call fcn.00403d4c
mov ecx, dword [ebp + 8]
and dword [esp + 0x70], 0
lea eax, [edi - 8]
call fcn.00413387
add edi, 0x18
mov eax, edi
call fcn.00433fe2
test al, al
je 0x412fe9
mov eax, edi
call fcn.00429659
push dword [esp + 0x10]
mov edi, eax
sub esp, 0x1c
mov eax, esi
mov esi, esp
mov dword [esp + 0x34], esp
call fcn.00403d4c
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x10]
test eax, eax
je 0x412fe9
mov edi, eax
push 0
push 1
lea esi, [esp + 0x4c]
call fcn.004012ba
mov eax, edi
jmp 0x412d99
mov edi, dword [esp + 0x18]
jmp 0x412fd5