Function at 0x40bc80
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x148
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x30], 0x1b5e1f14
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x44], edi
mov eax, dword [ebp - 0x30]
mov ecx, eax
sub ecx, 0x787141c2
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], ecx
jg 0x40c13d
jmp 0x40bccd
mov eax, dword [ebp - 0x48]
sub eax, 0x67a36811
mov dword [ebp - 0x50], eax
jg 0x40c124
jmp 0x40bce3
mov eax, dword [ebp - 0x48]
sub eax, 0x5893b68c
mov dword [ebp - 0x54], eax
jg 0x40c10b
jmp 0x40bcf9
mov eax, dword [ebp - 0x48]
sub eax, 0x537da787
mov dword [ebp - 0x58], eax
jg 0x40c0f2
jmp 0x40bd0f
mov eax, dword [ebp - 0x48]
sub eax, 0x4cdedc92
mov dword [ebp - 0x5c], eax
jg 0x40c0d9
jmp 0x40bd25
mov eax, dword [ebp - 0x48]
sub eax, 0x3ba4fc55
mov dword [ebp - 0x60], eax
jg 0x40c0c0
jmp 0x40bd3b
mov eax, dword [ebp - 0x48]
sub eax, 0x349c0175
mov dword [ebp - 0x64], eax
jg 0x40c0a7
jmp 0x40bd51
mov eax, dword [ebp - 0x48]
sub eax, 0x1eee6a8d
mov dword [ebp - 0x68], eax
jg 0x40c08e
jmp 0x40bd67
mov eax, dword [ebp - 0x48]
sub eax, 0x1b5e1f13
mov dword [ebp - 0x6c], eax
jg 0x40c075
jmp 0x40bd7d
mov eax, dword [ebp - 0x48]
sub eax, 0x1a3d03f8
mov dword [ebp - 0x70], eax
jg 0x40c05c
jmp 0x40bd93
mov eax, dword [ebp - 0x48]
sub eax, 0x170243fd
mov dword [ebp - 0x74], eax
jg 0x40c043
jmp 0x40bda9
mov eax, dword [ebp - 0x48]
sub eax, 0x149319de
mov dword [ebp - 0x78], eax
jg 0x40c02a
jmp 0x40bdbf
mov eax, dword [ebp - 0x48]
sub eax, 0x13f91b32
mov dword [ebp - 0x7c], eax
jg 0x40c011
jmp 0x40bdd5
mov eax, dword [ebp - 0x48]
sub eax, 0xca64e8d
mov dword [ebp - 0x80], eax
jg 0x40bff8
jmp 0x40bdeb
mov eax, dword [ebp - 0x48]
sub eax, 0x48b4ec9
mov dword [ebp - 0x84], eax
jg 0x40bfdf
jmp 0x40be04
mov eax, dword [ebp - 0x48]
sub eax, 0xf55dcfa2
mov dword [ebp - 0x88], eax
jg 0x40bfc6
jmp 0x40be1d
mov eax, dword [ebp - 0x48]
sub eax, 0xdaa408e1
mov dword [ebp - 0x8c], eax
jg 0x40bfad
jmp 0x40be36
mov eax, dword [ebp - 0x48]
sub eax, 0xd21fd631
mov dword [ebp - 0x90], eax
jg 0x40bf94
jmp 0x40be4f
mov eax, dword [ebp - 0x48]
sub eax, 0xce54c5e0
mov dword [ebp - 0x94], eax
jg 0x40bf7b
jmp 0x40be68
mov eax, dword [ebp - 0x48]
sub eax, 0xba3bae5b
mov dword [ebp - 0x98], eax
jg 0x40bf62
jmp 0x40be81
mov eax, dword [ebp - 0x48]
sub eax, 0xb021587a
mov dword [ebp - 0x9c], eax
jg 0x40bf49
jmp 0x40be9a
mov eax, dword [ebp - 0x48]
sub eax, 0xadc866ad
mov dword [ebp - 0xa0], eax
jg 0x40bf30
jmp 0x40beb3
mov eax, dword [ebp - 0x48]
sub eax, 0xa9f4c9d5
mov dword [ebp - 0xa4], eax
jg 0x40bf17
jmp 0x40becc
mov eax, dword [ebp - 0x48]
sub eax, 0x94f94fae
mov dword [ebp - 0xa8], eax
je 0x40c435
jmp 0x40bee5
mov eax, dword [ebp - 0x48]
sub eax, 0x951b6c37
mov dword [ebp - 0xac], eax
je 0x40c3cd
jmp 0x40befe
mov eax, dword [ebp - 0x48]
sub eax, 0xa44cd60d
mov dword [ebp - 0xb0], eax
je 0x40c5bd
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xa9f4c9d6
mov dword [ebp - 0xb4], eax
je 0x40c5c9
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xadc866ae
mov dword [ebp - 0xb8], eax
je 0x40c3a7
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xb021587b
mov dword [ebp - 0xbc], eax
je 0x40c417
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xba3bae5c
mov dword [ebp - 0xc0], eax
je 0x40c2ca
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xce54c5e1
mov dword [ebp - 0xc4], eax
je 0x40c304
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xd21fd632
mov dword [ebp - 0xc8], eax
je 0x40c322
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xdaa408e2
mov dword [ebp - 0xcc], eax
je 0x40c474
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xf55dcfa3
mov dword [ebp - 0xd0], eax
je 0x40c468
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x48b4eca
mov dword [ebp - 0xd4], eax
je 0x40c3c1
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0xca64e8e
mov dword [ebp - 0xd8], eax
je 0x40c2a4
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x13f91b33
mov dword [ebp - 0xdc], eax
je 0x40c289
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x149319df
mov dword [ebp - 0xe0], eax
je 0x40c2b1
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x170243fe
mov dword [ebp - 0xe4], eax
je 0x40c3b4
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x1a3d03f9
mov dword [ebp - 0xe8], eax
je 0x40c630
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x1b5e1f14
mov dword [ebp - 0xec], eax
je 0x40c15b
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x1eee6a8e
mov dword [ebp - 0xf0], eax
je 0x40c442
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x349c0176
mov dword [ebp - 0xf4], eax
je 0x40c168
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x3ba4fc56
mov dword [ebp - 0xf8], eax
je 0x40c2be
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x4cdedc93
mov dword [ebp - 0xfc], eax
je 0x40c402
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x537da788
mov dword [ebp - 0x100], eax
je 0x40c32f
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x5893b68d
mov dword [ebp - 0x104], eax
je 0x40c624
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x67a36812
mov dword [ebp - 0x108], eax
je 0x40c481
jmp 0x40c156
mov eax, dword [ebp - 0x48]
sub eax, 0x787141c3
mov dword [ebp - 0x10c], eax
je 0x40c38c
jmp 0x40c156
jmp 0x40c650
mov eax, 0x349c0176
mov dword [ebp - 0x30], eax
jmp 0x40c650
lea eax, [0x435550]
mov ecx, 4
mov dword [ebp - 0x110], eax
mov eax, ecx
mov dword [ebp - 0x114], ecx
call fcn.0042ad40
mov eax, esp
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x114]
call fcn.0042ad40
mov eax, esp
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x114]
call fcn.0042ad40
mov eax, esp
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x114]
call fcn.0042ad40
mov eax, esp
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x114]
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x114]
mov dword [ebp - 0x118], eax
mov eax, ecx
call fcn.0042ad40
mov eax, esp
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x114]
call fcn.0042ad40
mov eax, esp
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x114]
call fcn.0042ad40
mov eax, esp
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x34]
mov dword [eax], ecx
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov dword [eax], edx
mov eax, dword [ebp - 0x24]
mov esi, dword [ebp - 0x3c]
mov dword [eax], esi
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x40]
mov dword [eax], edi
mov eax, dword [ebp - 0x118]
mov ebx, dword [ebp - 0x44]
mov dword [eax], ebx
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 [ebp - 0x118]
mov eax, dword [eax]
sub esp, 8
mov dword [esp], eax
mov eax, dword [ebp - 0x110]
mov dword [esp + 4], eax
call fcn.0042b819
add esp, 8
mov ecx, 0x13f91b33
mov edx, dword [ebp - 0x1c]
mov dword [edx], eax
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 0
sete al
and al, 1
mov byte [ebp - 0xe], al
mov dword [ebp - 0x30], ecx
jmp 0x40c650
mov eax, 0xba3bae5c
mov ecx, 0xca64e8e
mov dl, byte [ebp - 0xe]
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov eax, 0x149319df
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov eax, 0x3ba4fc56
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov dword [ebp - 0x30], 0xb021587b
jmp 0x40c650
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x24]
mov edx, dword [edx]
mov esi, dword [ebp - 0x20]
mov esi, dword [esi]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.004063e0
add esp, 0x10
mov dword [ebp - 0x30], 0xce54c5e1
jmp 0x40c650
mov eax, 0x4cdedc93
mov ecx, 0xd21fd632
mov edx, dword [ebp - 0x24]
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov eax, 0x537da788
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov eax, 1
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x24]
mov edx, dword [edx]
mov esi, dword [ebp - 0x20]
mov esi, dword [esi]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 4], 1
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [ebp - 0x11c], eax
call fcn.0042b985
add esp, 0x10
mov ecx, 0x787141c3
mov edx, dword [ebp - 0x18]
mov dword [edx], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov edx, dword [ebp - 0x24]
cmp eax, dword [edx]
setne bl
and bl, 1
mov byte [ebp - 0xd], bl
mov dword [ebp - 0x30], ecx
jmp 0x40c650
mov eax, 0x951b6c37
mov ecx, 0xadc866ae
mov dl, byte [ebp - 0xd]
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov eax, 0x170243fe
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov eax, 0x48b4eca
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov dword [ebp - 0x30], 0xb021587b
jmp 0x40c650
mov eax, 0
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
add edx, ecx
mov ecx, dword [ebp - 0x20]
mov dword [ecx], edx
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x24]
mov edx, dword [edx]
sub eax, ecx
add edx, eax
mov eax, dword [ebp - 0x24]
mov dword [eax], edx
mov dword [ebp - 0x30], 0xce54c5e1
jmp 0x40c650
mov eax, dword [ebp - 0x14]
mov dword [eax], 0
mov dword [ebp - 0x30], 0xb021587b
jmp 0x40c650
mov eax, 0xdaa408e2
mov ecx, 0x94f94fae
mov edx, dword [ebp - 0x1c]
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov eax, 0x1eee6a8e
mov dword [ebp - 0x30], eax
jmp 0x40c650
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.0042ba6f
add esp, 4
mov ecx, 0xf55dcfa3
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x120], eax
jmp 0x40c650
mov dword [ebp - 0x30], 0xdaa408e2
jmp 0x40c650
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [0x435550]
mov ecx, 4
mov dword [ebp - 0x124], eax
mov eax, ecx
mov dword [ebp - 0x128], ecx
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x12c], eax
mov eax, ecx
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x130], eax
mov eax, ecx
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x134], eax
mov eax, ecx
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x138], eax
mov eax, ecx
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x13c], eax
mov eax, ecx
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x140], eax
mov eax, ecx
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x144], eax
mov eax, ecx
call fcn.0042ad40
mov eax, esp
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x34]
mov dword [ecx], edx
mov esi, dword [ebp - 0x130]
mov edi, dword [ebp - 0x38]
mov dword [esi], edi
mov ebx, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x3c]
mov dword [ebx], ecx
mov ecx, dword [ebp - 0x138]
mov edx, dword [ebp - 0x40]
mov dword [ecx], edx
mov ecx, dword [ebp - 0x13c]
mov edx, dword [ebp - 0x44]
mov dword [ecx], edx
mov ecx, dword [ebp - 0x140]
mov dword [ecx], 0
mov ecx, dword [ebp - 0x144]
mov dword [ecx], 0
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x13c]
mov eax, dword [eax]
sub esp, 8
mov dword [esp], eax
mov eax, dword [ebp - 0x124]
mov dword [esp + 4], eax
call fcn.0042b819
add esp, 8
mov ecx, dword [ebp - 0x140]
mov dword [ecx], eax
mov dword [ebp - 0x30], 0x349c0176
jmp 0x40c650
mov dword [ebp - 0x30], 0x149319df
jmp 0x40c650
mov eax, 1
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x24]
mov edx, dword [edx]
mov esi, dword [ebp - 0x20]
mov esi, dword [esi]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 4], 1
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [ebp - 0x148], eax
call fcn.0042b985
add esp, 0x10
mov ecx, dword [ebp - 0x18]
mov dword [ecx], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x30], 0x537da788
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x150], ecx
jmp 0x40c650
mov dword [ebp - 0x30], 0x170243fe
jmp 0x40c650
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.0042ba6f
add esp, 4
mov dword [ebp - 0x30], 0x1eee6a8e
mov dword [ebp - 0x154], eax
jmp 0x40bcb1