Function at 0x416ca0
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push 0xffffffffffffffff
push 0x455656
mov eax, dword fs:[0]
push eax
sub esp, 0x230
mov eax, dword [0x46dd54]
xor eax, esp
mov dword [esp + 0x22c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x46dd54]
xor eax, esp
push eax
lea eax, [esp + 0x244]
mov dword fs:[0], eax
mov eax, dword [esp + 0x258]
mov esi, ecx
mov ecx, dword [esp + 0x254]
mov dword [esp + 0x20], eax
xor ebp, ebp
mov eax, ecx
mov dword [esp + 0x64], 0xf
mov dword [esp + 0x60], ebp
mov byte [esp + 0x50], 0
lea edi, [eax + 1]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x416d07
sub eax, edi
push eax
push ecx
lea ecx, [esp + 0x54]
call fcn.00401d00
mov eax, dword [esi + 0x7c]
cmp eax, ebp
sete cl
test cl, cl
mov dword [esp + 0x24c], ebp
mov byte [esp + 0x17], cl
mov ebx, eax
je 0x416d6a
mov ecx, dword [esi + 0x5c]
push 2
push ebp
push ebp
push ecx
call fcn.0043afba
mov edx, dword [esi + 0x5c]
push edx
call fcn.0043ac5f
mov ebx, eax
mov eax, dword [0x46fe84]
add esp, 0x14
cmp eax, ebp
je 0x416dab
push str.append_file_to_add_DIR_NODE_n
push eax
call fcn.00437874
add esp, 8
jmp 0x416dab
push ebp
push ebp
push eax
mov eax, dword [esi + 0x5c]
push eax
call fcn.0043afba
push 0xec
lea ecx, [esp + 0x7c]
push ebp
push ecx
call fcn.00437da0
mov edx, dword [esi + 0x5c]
push edx
push 1
lea eax, [esp + 0x8c]
push 0xec
push eax
call fcn.0043af06
mov ecx, dword [esp + 0x138]
add esp, 0x2c
mov dword [esi + 0x7c], ecx
lea edx, [esp + 0x4c]
lea edi, [esi + 0x1a8]
push edx
lea eax, [esp + 0x1c]
push eax
mov ecx, edi
mov dword [esp + 0x2c], edi
call fcn.00413920
mov ebp, dword [esp + 0x18]
test ebp, ebp
mov ecx, dword [edi + 4]
mov dword [esp + 0x2c], ecx
je 0x416dd9
cmp ebp, edi
je 0x416dde
call fcn.00437128
mov edi, dword [esp + 0x1c]
cmp edi, dword [esp + 0x2c]
jne 0x416df2
cmp dword [esp + 0x64], 0x10
jmp 0x41703b
push 0xec
lea eax, [esp + 0x158]
push 0
push eax
call fcn.00437da0
add esp, 0xc
test ebp, ebp
jne 0x416e12
call fcn.00437128
cmp edi, dword [ebp + 4]
jne 0x416e1c
call fcn.00437128
mov edi, dword [edi + 0x28]
push edi
mov ecx, esi
call fcn.00414f40
mov ebp, dword [edi + 0xc]
test ebp, ebp
mov dword [esp + 0x18], eax
je 0x416eaf
push 0xec
lea ecx, [esp + 0x6c]
push 0
push ecx
call fcn.00437da0
mov edx, dword [esi + 0x5c]
push 0
push 0
push ebp
push edx
call fcn.0043afba
mov eax, dword [esi + 0x5c]
push eax
push 1
lea ecx, [esp + 0x8c]
push 0xec
push ecx
call fcn.0043af06
mov edx, dword [edi + 0xc]
mov eax, dword [esi + 0x5c]
push 0
push 0
push edx
push eax
mov dword [esp + 0xa4], ebx
call fcn.0043afba
mov ebp, dword [esi + 0x5c]
push ebp
push 1
lea ecx, [esp + 0xac]
push 0xec
push ecx
call fcn.00436e9a
add esp, 0x4c
push ebp
call fcn.004387d0
mov edx, dword [edi + 0xc]
add esp, 4
mov dword [esp + 0x158], edx
mov eax, dword [esp + 0x18]
push 0
push 0
mov dword [edi + 0xc], ebx
mov ecx, dword [esi + 0x5c]
push eax
push ecx
call fcn.0043afba
mov ebp, dword [esi + 0x5c]
push ebp
push 1
push 0xec
push edi
call fcn.00436e9a
push ebp
call fcn.004387d0
mov edx, dword [esp + 0x3c]
add esp, 0x24
cmp byte [esp + 0x17], 0
mov dword [esp + 0x15c], edx
je 0x416efe
push 0x45ace4
mov ecx, esi
call fcn.00415550
jmp 0x416f0f
mov eax, dword [esi + 0x5c]
push 0
push 0
push ebx
push eax
call fcn.0043afba
add esp, 0x10
mov ebp, dword [esp + 0x20]
lea edx, [esp + 0x178]
mov eax, ebp
sub edx, ebp
mov edi, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x416f20
mov edi, dword [esi + 0x5c]
push edi
push 1
lea ecx, [esp + 0x15c]
push 0xec
push ecx
call fcn.00436e9a
push edi
call fcn.004387d0
add esp, 0x14
cmp byte [esp + 0x17], 0
je 0x416f60
push 0x45ac94
mov ecx, esi
call fcn.00415550
mov edx, dword [esi + 0x5c]
push 0
push 0
push 0
push edx
call fcn.0043afba
mov edi, dword [esi + 0x5c]
push edi
push 1
push 0xf0
add esi, 0x60
push esi
call fcn.00436e9a
push edi
call fcn.004387d0
push 0xec
call fcn.0041ae77
mov esi, eax
add esp, 0x28
test esi, esi
je 0x416fb0
push 0xec
push 0
push esi
call fcn.00437da0
add esp, 0xc
mov ebx, esi
jmp 0x416fb2
xor ebx, ebx
mov ecx, 0x3b
lea esi, [esp + 0x154]
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
xor edi, edi
mov eax, ebp
mov dword [esp + 0x48], 0xf
mov dword [esp + 0x44], edi
mov byte [esp + 0x34], 0
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x416fe0
sub eax, edx
push eax
push ebp
lea ecx, [esp + 0x38]
call fcn.00401d00
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x30]
push eax
mov byte [esp + 0x250], 1
call fcn.004144e0
mov esi, 0x10
mov dword [eax], ebx
cmp dword [esp + 0x48], esi
jb 0x417026
mov ecx, dword [esp + 0x34]
push ecx
call fcn.0041aea7
add esp, 4
cmp dword [esp + 0x64], esi
mov dword [esp + 0x48], 0xf
mov dword [esp + 0x44], edi
mov byte [esp + 0x34], 0
jb 0x41704a
mov edx, dword [esp + 0x50]
push edx
call fcn.0041aea7
add esp, 4
mov ecx, dword [esp + 0x244]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x22c]
xor ecx, esp
call fcn.00436c82
add esp, 0x23c
ret 8