Function at 0x4055c0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x38
mov edi, dword [ebp + 0x18]
mov ebx, dword [ebp + 0x14]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x30], 0xb6b304d6
jmp 0x4055e0
mov dword [ebp - 0x30], eax
nop
nop
mov eax, dword [ebp - 0x30]
cmp eax, 0x79cfe73e
jg 0x405640
cmp eax, 0x6205318d
jg 0x405650
cmp eax, 0x60274031
jg 0x4056a8
cmp eax, 0x4f925ea9
jg 0x4056bf
cmp eax, 0x3fe4910b
jg 0x4056d6
cmp eax, 0x93e8d85c
jg 0x405717
cmp eax, 0x9306d08f
jne 0x4055e0
mov al, byte [ebp - 0xd]
test al, al
mov eax, 0xb84195bb
jne 0x405635
mov eax, 0x79cfe73f
mov dword [ebp - 0x30], eax
jmp 0x4055e0
cmp eax, 0x79cfe73f
jne 0x4055e0
jmp 0x405bd4
cmp eax, 0x6205318e
jne 0x4055e0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.004175f8
add esp, 0x10
mov ecx, dword [ebp - 0x18]
mov dword [ecx], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x24]
mov eax, 0xb3bbd827
cmp ecx, dword [edx]
jne 0x4055db
mov eax, 0x3fe4910c
jmp 0x4055db
cmp eax, 0x60274032
jne 0x4055e0
mov dword [ebp - 0x30], 0xd3eab8c
jmp 0x4055e0
cmp eax, 0x4f925eaa
jne 0x4055e0
mov dword [ebp - 0x30], 0xff4344ec
jmp 0x4055e0
cmp eax, 0x3fe4910c
jne 0x4055e0
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x20]
add eax, dword [ecx]
mov ecx, dword [ebp - 0x20]
mov dword [ecx], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ecx]
add ecx, 0xb1fecf1e
sub ecx, dword [eax]
add ecx, 0x4e0130e2
mov eax, dword [ebp - 0x24]
mov dword [eax], ecx
mov dword [ebp - 0x30], 0x268b36bf
jmp 0x4055e0
cmp eax, 0xa7de5234
jg 0x405735
cmp eax, 0x93e8d85d
jne 0x4055e0
mov dword [ebp - 0x30], 0xd3eab8c
jmp 0x4055e0
cmp eax, 0xae755f3a
jg 0x405814
cmp eax, 0xa7de5235
jne 0x4055e0
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x34], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x38], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x3c], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x40], esp
mov eax, 4
call fcn.00416a40
mov ecx, edi
mov edi, esp
mov eax, 4
call fcn.00416a40
mov esi, ebx
mov ebx, esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x44], esp
mov eax, 4
call fcn.00416a40
mov eax, dword [ebp - 0x34]
mov dword [eax], ecx
mov eax, dword [ebp - 0x38]
mov dword [eax], esi
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp - 0x3c]
mov dword [edx], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x40]
mov dword [edx], eax
mov eax, dword [ebp - 0x44]
mov dword [eax], 0
mov eax, dword [ebp + 8]
mov dword [edi], eax
mov dword [ebx], 0
mov dword [esp], 0xffffffff
mov eax, dword [edi]
mov edi, ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0x421458
call fcn.0041773a
add esp, 8
mov dword [ebx], eax
mov ebx, esi
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x30], 0x23e6f680
jmp 0x4055e0
cmp eax, 0xb3bbd826
jg 0x405832
cmp eax, 0xae755f3b
jne 0x4055e0
mov dword [ebp - 0x30], 0x79cfe73f
jmp 0x4055e0
cmp eax, 0xb6b304d5
jg 0x405850
cmp eax, 0xb3bbd827
jne 0x4055e0
mov dword [ebp - 0x30], 0xd3eab8c
jmp 0x4055e0
cmp eax, 0x3da1ead3
jg 0x4058d1
cmp eax, 0x3cdbeda4
jg 0x4058f1
cmp eax, 0x3529e15f
jg 0x405908
cmp eax, 0x268b36be
jg 0x405929
cmp eax, 0x23e6f67f
jg 0x40594e
cmp eax, 0xd3eab8b
jg 0x405a2a
cmp eax, 0xff4344eb
jg 0x405a41
cmp eax, 0xf6906015
jg 0x405a92
cmp eax, 0xe1bd876a
jg 0x405aa9
cmp eax, 0xb6ffee01
jg 0x405ad3
cmp eax, 0xb6b304d6
jne 0x4055e0
mov dword [ebp - 0x30], 0x23e6f680
jmp 0x4055e0
cmp eax, 0x3da1ead4
jne 0x4055e0
mov eax, dword [ebp - 0x14]
mov dword [eax], 0
mov dword [ebp - 0x30], 0xcfaf3bff
jmp 0x4055e0
cmp eax, 0x3cdbeda5
jne 0x4055e0
mov dword [ebp - 0x30], 0x268b36bf
jmp 0x4055e0
cmp eax, 0x3529e160
jne 0x4055e0
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 0
setne byte [ebp - 0xd]
mov dword [ebp - 0x30], 0x9306d08f
jmp 0x4055e0
cmp eax, 0x268b36bf
jne 0x4055e0
mov ecx, dword [ebp - 0x24]
mov eax, 0x6205318e
cmp dword [ecx], 0
jne 0x405946
mov eax, 0xf6906016
mov dword [ebp - 0x30], eax
jmp 0x4055e0
cmp eax, 0x23e6f680
jne 0x4055e0
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x2c], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x28], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x24], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x20], esp
mov eax, 4
call fcn.00416a40
mov ecx, esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x1c], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x18], esp
mov eax, 4
call fcn.00416a40
mov dword [ebp - 0x14], esp
mov eax, dword [ebp - 0x2c]
mov dword [eax], edi
mov eax, dword [ebp - 0x28]
mov dword [eax], ebx
mov eax, dword [ebp - 0x24]
mov dword [eax], esi
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp + 0xc]
mov dword [eax], edx
mov eax, dword [ebp + 8]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0
mov eax, dword [ebp - 0x18]
mov dword [eax], 0
mov eax, dword [ebp - 0x14]
mov dword [eax], 0xffffffff
mov eax, dword [ecx]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0x421458
call fcn.0041773a
add esp, 8
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 0
sete byte [ebp - 0xe]
mov dword [ebp - 0x30], 0xe07da0fa
jmp 0x4055e0
cmp eax, 0xd3eab8c
jne 0x4055e0
mov dword [ebp - 0x30], 0x3529e160
jmp 0x4055e0
cmp eax, 0xff4344ec
jne 0x4055e0
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ecx]
mov dword [ebp - 0x38], eax
mov edx, dword [ebp - 0x24]
mov edx, dword [edx]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
sub esp, 0x10
mov ecx, dword [ebp - 0x34]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp - 0x38]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00402580
add esp, 0x10
mov dword [ebp - 0x30], 0x3cdbeda5
jmp 0x4055e0
cmp eax, 0xf6906016
jne 0x4055e0
mov dword [ebp - 0x30], 0xcfaf3bff
jmp 0x4055e0
cmp eax, 0xe1bd876b
jne 0x4055e0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.004177bb
add esp, 4
mov dword [ebp - 0x30], 0xae755f3b
jmp 0x4055e0
cmp eax, 0xb84195ba
jg 0x405b04
cmp eax, 0xb6ffee02
jne 0x4055e0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.004177bb
add esp, 4
mov dword [ebp - 0x30], 0xe1bd876b
jmp 0x4055e0
cmp eax, 0xcfaf3bfe
jg 0x405b22
cmp eax, 0xb84195bb
jne 0x4055e0
mov dword [ebp - 0x30], 0xe1bd876b
jmp 0x4055e0
cmp eax, 0xe07da0f9
jg 0x405b49
cmp eax, 0xcfaf3bff
jne 0x4055e0
mov eax, dword [ebp - 0x14]
mov dword [eax], 0
mov dword [ebp - 0x30], 0x93e8d85d
jmp 0x4055e0
cmp eax, 0xe07da0fa
je 0x405b66
cmp eax, 0xe0fafad2
jne 0x405b7f
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], 0x3529e160
jmp 0x4055e0
mov al, byte [ebp - 0xe]
test al, al
mov eax, 0x60274032
jne 0x405b77
mov eax, 0x4f925eaa
mov dword [ebp - 0x30], eax
jmp 0x4055e0
cmp eax, 0xe100f4b6
jne 0x4055e0
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ecx]
mov dword [ebp - 0x38], eax
mov edx, dword [ebp - 0x24]
mov edx, dword [edx]
mov eax, esi
mov esi, dword [ebp - 0x20]
mov esi, dword [esi]
sub esp, 0x10
mov ecx, dword [ebp - 0x34]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp - 0x38]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], esi
mov esi, eax
call fcn.00402580
add esp, 0x10
mov dword [ebp - 0x30], 0xff4344ec
jmp 0x4055e0
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret