Function at 0x405c20
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x44
mov ebx, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x34], 0xc4f0d26e
jmp 0x405c50
mov dword [ebp - 0x34], 0xcbcda0b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x34]
cmp eax, 0x9be57d3f
jg 0x405c70
cmp eax, 0x84846e76
jne 0x405c50
jmp 0x405c3b
cmp eax, 0x7a8654e9
jg 0x405d20
cmp eax, 0x76148f2c
jg 0x405d4a
cmp eax, 0x72cf3a0b
jg 0x405d61
cmp eax, 0x668bc1be
jg 0x405d85
cmp eax, 0x51316263
jg 0x405d9c
cmp eax, 0x467adff4
jg 0x405db3
cmp eax, 0x40c34db6
jg 0x405dcd
cmp eax, 0x9d3e1ea0
jg 0x405de4
cmp eax, 0x9be57d40
jne 0x405c50
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x24]
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.004192c8
add esp, 0x10
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x28]
mov eax, 0x40c34db7
cmp ecx, dword [edx]
jne 0x405d17
mov eax, 0x9ea6b9b3
mov dword [ebp - 0x34], eax
jmp 0x405c50
cmp eax, 0x7a8654ea
jne 0x405c50
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.004193b2
add esp, 4
mov dword [ebp - 0x34], 0xcee637ab
jmp 0x405c50
cmp eax, 0x76148f2d
jne 0x405c50
mov dword [ebp - 0x34], 0xc3b4d383
jmp 0x405c50
cmp eax, 0x72cf3a0c
jne 0x405c50
mov al, byte [ebp - 0x12]
test al, al
mov eax, 0x51316264
jne 0x405d7d
mov eax, 0x76148f2d
mov dword [ebp - 0x34], eax
jmp 0x405c50
cmp eax, 0x668bc1bf
jne 0x405c50
mov dword [ebp - 0x34], 0x28d88d79
jmp 0x405c50
cmp eax, 0x51316264
jne 0x405c50
mov dword [ebp - 0x34], 0x9e669a40
jmp 0x405c50
cmp eax, 0x467adff5
jne 0x405c50
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x34], 0xd0f6c435
jmp 0x405c50
cmp eax, 0x40c34db7
jne 0x405c50
mov dword [ebp - 0x34], 0xcbcda0b
jmp 0x405c50
cmp eax, 0x9e669a3f
jg 0x405dfb
cmp eax, 0x9d3e1ea1
jne 0x405c50
jmp 0x406243
cmp eax, 0x29e322d9
jg 0x405eca
cmp eax, 0x299db709
jg 0x405ee4
cmp eax, 0x28d88d78
jg 0x405efb
cmp eax, 0x211b6f92
jg 0x405f12
cmp eax, 0xcbcda0a
jg 0x405f36
cmp eax, 0x466969f
jg 0x405f5b
cmp eax, 0x374ca94
jg 0x40602b
cmp eax, 0xe3af55e8
jg 0x40607c
cmp eax, 0xd0f6c434
jg 0x40609c
cmp eax, 0xcee637aa
jg 0x4060bd
cmp eax, 0xce24b47d
jg 0x4060d4
cmp eax, 0xc4f0d26d
jg 0x4060f3
cmp eax, 0xc3b4d382
jg 0x40610a
cmp eax, 0x9e669a40
je 0x40615b
cmp eax, 0x9ea6b9b3
jne 0x406167
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x24]
add eax, dword [ecx]
mov ecx, dword [ebp - 0x24]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
mov ecx, dword [ecx]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x28]
mov dword [eax], ecx
mov dword [ebp - 0x34], 0x28d88d79
jmp 0x405c50
cmp eax, 0x29e322da
jne 0x405c50
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x34], 0xce24b47e
jmp 0x405c50
cmp eax, 0x299db70a
jne 0x405c50
mov dword [ebp - 0x34], 0x9e669a40
jmp 0x405c50
cmp eax, 0x28d88d79
jne 0x405c50
mov dword [ebp - 0x34], 0xd0f6c435
jmp 0x405c50
cmp eax, 0x211b6f93
jne 0x405c50
mov al, byte [ebp - 0x11]
test al, al
mov eax, 0x9be57d40
jne 0x405f2e
mov eax, 0xe3af55e9
mov dword [ebp - 0x34], eax
jmp 0x405c50
cmp eax, 0xcbcda0b
jne 0x405c50
mov ecx, dword [ebp - 0x20]
mov eax, 0x7a8654ea
cmp dword [ecx], 0
jne 0x405f53
mov eax, 0xcee637ab
mov dword [ebp - 0x34], eax
jmp 0x405c50
cmp eax, 0x46696a0
jne 0x405c50
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x38], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x3c], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x40], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x48], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x44], esp
mov eax, 4
call fcn.00418710
mov ecx, esp
mov dword [ebp - 0x50], ecx
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x4c], esp
mov eax, 4
call fcn.00418710
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x38]
mov dword [edx], eax
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp - 0x3c]
mov dword [edx], eax
mov eax, dword [ebp - 0x40]
mov dword [eax], ebx
mov eax, dword [ebp - 0x48]
mov dword [eax], esi
mov eax, dword [ebp - 0x4c]
mov dword [eax], 0
mov eax, dword [ebp - 0x44]
mov dword [eax], edi
mov dword [ecx], 0
mov dword [esp], 0xffffffff
mov eax, dword [eax]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0x423461
call fcn.004194ed
add esp, 8
mov ecx, dword [ebp - 0x50]
mov dword [ecx], eax
mov dword [ebp - 0x34], 0xbc12ba46
jmp 0x405c50
cmp eax, 0x374ca95
jne 0x405c50
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx]
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x28]
mov edx, dword [edx]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
sub esp, 0x10
mov ecx, dword [ebp - 0x38]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp - 0x3c]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00402580
add esp, 0x10
mov dword [ebp - 0x34], 0xc3b4d383
jmp 0x405c50
cmp eax, 0xe3af55e9
jne 0x405c50
mov eax, dword [ebp - 0x18]
mov dword [eax], 0
mov dword [ebp - 0x34], 0xcbcda0b
jmp 0x405c50
cmp eax, 0xd0f6c435
jne 0x405c50
mov eax, dword [ebp - 0x28]
cmp dword [eax], 0
setne byte [ebp - 0x11]
mov dword [ebp - 0x34], 0x211b6f93
jmp 0x405c50
cmp eax, 0xcee637ab
jne 0x405c50
mov dword [ebp - 0x34], 0xce24b47e
jmp 0x405c50
cmp eax, 0xce24b47e
jne 0x405c50
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x34], 0x9d3e1ea1
jmp 0x405c50
cmp eax, 0xc4f0d26e
jne 0x405c50
mov dword [ebp - 0x34], 0xbc12ba46
jmp 0x405c50
cmp eax, 0xc3b4d383
jne 0x405c50
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx]
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x28]
mov edx, dword [edx]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
sub esp, 0x10
mov ecx, dword [ebp - 0x38]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp - 0x3c]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00402580
add esp, 0x10
mov dword [ebp - 0x34], 0x668bc1bf
jmp 0x405c50
mov dword [ebp - 0x34], 0x84846e76
jmp 0x405c50
cmp eax, 0xbc12ba46
jne 0x405c50
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x30], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x2c], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x28], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x24], esp
mov eax, 4
call fcn.00418710
mov ecx, esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x20], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x1c], esp
mov eax, 4
call fcn.00418710
mov dword [ebp - 0x18], esp
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp + 0x18]
mov dword [eax], edx
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
mov eax, dword [ebp - 0x28]
mov dword [eax], ebx
mov eax, dword [ebp - 0x24]
mov dword [eax], esi
mov dword [ecx], edi
mov eax, dword [ebp - 0x20]
mov dword [eax], 0
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0
mov eax, dword [ebp - 0x18]
mov dword [eax], 0xffffffff
mov eax, dword [ecx]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0x423461
call fcn.004194ed
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ecx], eax
mov eax, dword [ebp - 0x20]
cmp dword [eax], 0
sete byte [ebp - 0x12]
mov dword [ebp - 0x34], 0x72cf3a0c
jmp 0x405c50
mov eax, dword [ebp - 0x10]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret