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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x445c17
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x458210]
xor eax, esp
mov dword [esp + 0xc0], eax
push ebx
push esi
push edi
mov eax, dword [0x458210]
xor eax, esp
push eax
lea eax, [esp + 0xd8]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
push dword [ebp + 8]
mov edi, ecx
mov dword [esp + 0x2c], eax
lea eax, [edi - 8]
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], eax
call fcn.00413749
xor esi, esi
cmp dword [ebp + 0xc], esi
mov ebx, eax
mov byte [esp + 0x14], 0
je 0x412f87
jle 0x412f50
cmp dword [ebp + 0xc], 6
jle 0x412f8c
lea esi, [ebx + 0x70]
call fcn.0041a99d
and dword [ebx + 0x74], 0
mov eax, 0x80004005
mov ecx, dword [esp + 0xd8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.00434bcb
mov esp, ebp
pop ebp
ret 0xc
mov byte [esp + 0x14], 1
cmp dword [ebx + 0x74], esi
je 0x413094
lea eax, [ebx + 0x70]
call fcn.0042960a
test al, al
je 0x413094
mov cl, byte [edi + 0x4c]
test cl, cl
jne 0x412fba
cmp byte [edi + 0x4e], cl
jne 0x412fba
cmp byte [edi + 0x4d], cl
je 0x413061
mov eax, dword [ebx + 0x78]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x7c]
mov dword [esp + 0x30], eax
mov eax, dword [ebx + 0x80]
mov dword [esp + 0x34], eax
mov eax, dword [ebx + 0x84]
mov dword [esp + 0x38], eax
mov eax, dword [ebx + 0x88]
mov dword [esp + 0x18], eax
mov eax, dword [ebx + 0x8c]
mov dword [esp + 0x1c], 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 0x41301a
cmp byte [ebx + 0x9a], 0
je 0x41301a
lea esi, [esp + 0x18]
jmp 0x413026
neg al
lea edx, [esp + 0x3c]
sbb eax, eax
and eax, edx
mov esi, eax
cmp byte [edi + 0x4d], 0
je 0x41303b
cmp byte [ebx + 0x99], 0
je 0x41303b
lea edx, [esp + 0x34]
jmp 0x41303d
xor edx, edx
test cl, cl
je 0x413050
cmp byte [ebx + 0x98], 0
je 0x413050
lea ecx, [esp + 0x2c]
jmp 0x413052
xor ecx, ecx
mov eax, dword [ebx + 0x74]
push esi
push edx
push ecx
push dword [eax + 0x18]
call dword [sym.imp.KERNEL32.dll_SetFileTime]
mov ecx, dword [ebx + 0x74]
mov eax, dword [ecx]
call dword [eax + 8]
cmp byte [esp + 0x14], 0
mov dword [ebx + 0x68], eax
mov dword [ebx + 0x6c], edx
jne 0x41307e
mov ecx, dword [ebx + 0x74]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov esi, dword [ebx + 0x74]
call fcn.0042d460
lea esi, [ebx + 0x70]
call fcn.0041a99d
and dword [ebx + 0x74], 0
xor esi, esi
mov ecx, dword [ebx + 0x68]
lea eax, [edi + 0xd8]
add dword [eax], ecx
mov ecx, dword [ebx + 0x6c]
adc dword [eax + 4], ecx
cmp byte [ebx + 0x9c], 0
lea eax, [edi + 0xc8]
jne 0x4130ba
lea eax, [edi + 0xd0]
add dword [eax], 1
adc dword [eax + 4], esi
cmp byte [ebx + 0x65], 0
je 0x4130e7
cmp byte [ebx + 0x9b], 0
je 0x4130e7
mov eax, dword [ebx + 0x94]
mov ecx, dword [ebx + 0x90]
mov dword [esp + 0x30], eax
lea eax, [ebx + 0x2c]
call fcn.0040fb60
mov dword [esp + 0x18], esi
lea esi, [edi + 0x14]
mov eax, esi
call fcn.0042960a
test al, al
je 0x413123
mov eax, esi
call fcn.0042213c
push dword [esp + 0x28]
movzx ecx, byte [ebx + 0x66]
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 0x413123
jmp 0x412f61
cmp byte [esp + 0x14], 0
jne 0x41316a
cmp byte [edi + 0x2c], 0
jne 0x41338e
lea esi, [ebx + 0x2c]
push esi
call fcn.0040d560
test al, al
pop ecx
je 0x41338e
push esi
call fcn.0040fb90
test al, al
pop ecx
jne 0x41338e
push esi
add edi, 0x110
call fcn.00413ddf
mov edi, dword [esp + 0x24]
jmp 0x41338e
cmp byte [ebx + 0x9c], 0
jne 0x41338e
cmp byte [ebx + 0x64], 0
je 0x41338e
lea esi, [ebx + 0x48]
push esi
call fcn.0040d560
test al, al
pop ecx
je 0x413387
push esi
call fcn.0040fb90
test al, al
pop ecx
mov eax, esi
jne 0x413293
call fcn.00407d2b
lea eax, [esp + 0x44]
push 0x271c
push eax
call fcn.00402ca2
and dword [esp + 0xe8], 0
push esi
push eax
lea eax, [esp + 0xa8]
push eax
call fcn.0040835d
add esp, 0x14
push 0
push 1
lea esi, [esp + 0x4c]
mov byte [esp + 0xe8], 2
call fcn.004012b6
lea eax, [esp + 0x7c]
push 0x2790
push eax
call fcn.00402ca2
pop ecx
pop ecx
push 0xffffffffffffffff
xor edi, edi
push edi
lea esi, [esp + 0xa0]
mov byte [esp + 0xe8], 3
call fcn.004041b7
push edi
push 1
lea esi, [esp + 0x84]
mov byte [esp + 0xe8], 2
call fcn.004012b6
lea esi, [esp + 0x7c]
call fcn.0040cf00
push 0xffffffffffffffff
push edi
lea esi, [esp + 0xa0]
mov byte [esp + 0xe8], 4
call fcn.004041b7
push edi
push 1
lea esi, [esp + 0x84]
mov byte [esp + 0xe8], 2
call fcn.004012b6
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x98]
push eax
push dword [ebp + 8]
call fcn.00413800
cmp eax, edi
je 0x41328f
mov ebx, eax
lea esi, [esp + 0x98]
push edi
push 1
call fcn.004012b6
mov eax, ebx
jmp 0x412f61
xor ebx, ebx
jmp 0x413279
lea ecx, [ebx + 0x2c]
call fcn.0040b850
test al, al
jne 0x413387
mov eax, esi
call fcn.00407d2b
lea eax, [esp + 0x44]
push 0x271d
push eax
call fcn.00402ca2
push esi
push eax
lea eax, [esp + 0x8c]
push eax
mov dword [esp + 0xf4], 5
call fcn.0040835d
add esp, 0x14
push 0
push 1
lea esi, [esp + 0x4c]
mov byte [esp + 0xe8], 7
call fcn.004012b6
lea eax, [esp + 0x98]
push 0x2790
push eax
call fcn.00402ca2
pop ecx
pop ecx
push 0xffffffffffffffff
xor edi, edi
push edi
lea esi, [esp + 0x84]
mov byte [esp + 0xe8], 8
call fcn.004041b7
push edi
push 1
lea esi, [esp + 0xa0]
mov byte [esp + 0xe8], 7
call fcn.004012b6
lea esi, [esp + 0x60]
call fcn.0040cf00
push 0xffffffffffffffff
push edi
lea esi, [esp + 0x84]
mov byte [esp + 0xe8], 9
call fcn.004041b7
push edi
push 1
lea esi, [esp + 0x68]
mov byte [esp + 0xe8], 7
call fcn.004012b6
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x7c]
push eax
push dword [ebp + 8]
call fcn.00413800
cmp eax, edi
je 0x413383
mov ebx, eax
lea esi, [esp + 0x7c]
jmp 0x413280
xor ebx, ebx
jmp 0x41337a
mov eax, esi
call fcn.00407d2b
lea eax, [ebx + 0x2c]
lea esi, [esp + 0xb4]
call fcn.00403d21
mov ecx, dword [ebp + 8]
lea eax, [edi - 8]
mov dword [esp + 0xe0], 0xa
call fcn.004137b1
lea esi, [edi + 0x18]
mov eax, esi
call fcn.0042960a
test al, al
je 0x413407
mov eax, esi
call fcn.0042213c
push dword [esp + 0x14]
mov edi, eax
sub esp, 0x1c
lea eax, [esp + 0xd4]
mov esi, esp
mov dword [esp + 0x44], esp
call fcn.00403d21
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x10]
test eax, eax
je 0x413407
mov edi, eax
push 0
push 1
lea esi, [esp + 0xbc]
call fcn.004012b6
mov eax, edi
jmp 0x412f61
mov edi, dword [esp + 0x18]
jmp 0x4133f0