Function at 0x436c98
Capabilities:
Write file on windows

Disassembly:
push 0xffffffffffffffff
push 0x4576f9
mov eax, dword fs:[0]
push eax
sub esp, 0x1ec
mov eax, dword [0x46c340]
xor eax, esp
mov dword [esp + 0x1e8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x46c340]
xor eax, esp
push eax
lea eax, [esp + 0x200]
mov dword fs:[0], eax
mov ebp, ecx
mov dword [esp + 0x34], ebp
mov dword [ebp], 0x461918
xor ebx, ebx
mov dword [esp + 0x208], ebx
cmp byte [0x46fa6c], bl
je 0x437090
mov dword [esp + 0xf0], 0xf
mov dword [esp + 0xec], ebx
mov byte [esp + 0xdc], bl
lea eax, [esp + 0x54]
push eax
mov byte [esp + 0x20c], 2
call fcn.00437118
lea esi, [esp + 0x18]
mov byte [esp + 0x208], 3
call fcn.00436b18
mov edi, eax
push ebp
lea esi, [esp + 0x3c]
mov byte [esp + 0x20c], 4
call fcn.00436c08
mov esi, eax
push 0x461894
push ecx
mov byte [esp + 0x210], 5
call dword [fcn.004590ac]
push eax
push ecx
push 0x461898
push ecx
push 0x46189c
push ecx
mov ecx, dword [ebp + 8]
push ecx
push ecx
push 0x4618a0
push ecx
lea edx, [ebp + 0xc]
push edx
push ecx
push 0x4618a4
push ecx
push edi
push ecx
push fcn.004618a8
push ecx
push esi
push ecx
lea eax, [esp + 0xac]
push 0x4618ac
push eax
call fcn.0041b778
add esp, 0xc
push eax
call fcn.00437b08
add esp, 0xc
push eax
call fcn.0041b778
add esp, 0xc
push eax
call fcn.00437b08
add esp, 0xc
push eax
call fcn.0041b778
add esp, 0xc
push eax
call fcn.00437b08
add esp, 0xc
push eax
call fcn.0041b778
add esp, 0xc
push eax
call fcn.00425d48
add esp, 4
push eax
call fcn.0041b778
add esp, 0xc
push eax
call fcn.0041b778
add esp, 0xc
push eax
call fcn.0041f918
add esp, 4
push eax
call fcn.0041b778
mov edi, 0x10
add esp, 8
cmp dword [esp + 0x50], edi
jb 0x436e19
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.0044849d
add esp, 4
mov byte [esp + 0x208], 3
mov dword [esp + 0x50], 0xf
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x30], edi
jb 0x436e44
mov edx, dword [esp + 0x1c]
push edx
call fcn.0044849d
add esp, 4
lea ecx, [esp + 0x18]
lea eax, [esp + 0x54]
call fcn.00437218
push ebx
push eax
or eax, 0xffffffff
lea esi, [esp + 0xe0]
mov byte [esp + 0x210], 6
call fcn.00423a48
mov byte [esp + 0x208], 3
cmp dword [esp + 0x30], edi
jb 0x436e85
mov eax, dword [esp + 0x1c]
push eax
call fcn.0044849d
add esp, 4
push 1
push 0x4618b0
lea eax, [esp + 0xe0]
call fcn.00423498
lea eax, [ebp + 0x28]
lea ecx, [esp + 0x18]
call fcn.00437218
push ebx
push eax
or eax, 0xffffffff
lea esi, [esp + 0xe0]
mov byte [esp + 0x210], 7
call fcn.00423a48
mov byte [esp + 0x208], 3
cmp dword [esp + 0x30], edi
jb 0x436ed8
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.0044849d
add esp, 4
push 1
push 0x4618b4
lea eax, [esp + 0xe0]
call fcn.00423498
cmp dword [0x46d3dc], ebx
jne 0x436fb8
push 0x103
lea edx, [esp + 0xf9]
push ebx
push edx
mov byte [esp + 0x100], bl
call fcn.0044f1a8
add esp, 0xc
push 0x104
lea eax, [esp + 0xf8]
push eax
push ebx
call dword [fcn.004590d8]
lea eax, [esp + 0xf4]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x436f38
sub eax, edx
push eax
lea ecx, [esp + 0xf8]
push ecx
mov ecx, 0x46d3c8
call fcn.0041a378
push 1
push 0x461858
mov edi, 0x46d3c8
call fcn.00419cc8
push eax
xor ecx, ecx
lea esi, [esp + 0x1c]
mov edx, edi
call fcn.004196e8
push 0xffffffffffffffff
push ebx
push eax
mov ecx, edi
mov byte [esp + 0x214], 8
call fcn.00419bb8
mov byte [esp + 0x208], 3
cmp dword [esp + 0x30], 0x10
jb 0x436fa2
mov edx, dword [esp + 0x1c]
push edx
call fcn.0044849d
add esp, 4
push 0xa
push 0x4618b8
mov eax, 0x46d3c8
call fcn.00423498
mov edi, 0x10
mov eax, dword [esp + 0xdc]
cmp dword [esp + 0xf0], edi
jae 0x436fcf
lea eax, [esp + 0xdc]
push eax
call dword [0x459118]
mov eax, dword [0x46d3cc]
cmp dword [0x46d3e0], edi
jae 0x436fe8
mov eax, 0x46d3cc
push 0x4618c4
push eax
call fcn.0044a787
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x43702d
mov eax, dword [esp + 0xdc]
cmp dword [esp + 0xf0], edi
jae 0x437013
lea eax, [esp + 0xdc]
mov ecx, dword [esp + 0xec]
push esi
push ecx
push 1
push eax
call fcn.00449c6e
push esi
call fcn.00449d67
add esp, 0x14
lea ecx, [esp + 0xa0]
mov byte [esp + 0x208], 2
call fcn.004371a8
lea edx, [esp + 0xa0]
push edx
mov dword [esp + 0xa4], 0x460224
call fcn.00447268
add esp, 4
cmp dword [esp + 0xf0], edi
jb 0x437075
mov eax, dword [esp + 0xdc]
push eax
call fcn.0044849d
add esp, 4
mov dword [esp + 0xf0], 0xf
mov dword [esp + 0xec], ebx
mov byte [esp + 0xdc], bl
jmp 0x437095
mov edi, 0x10
lea esi, [ebp + 0x74]
mov ecx, esi
mov byte [esp + 0x208], bl
call fcn.004371a8
push esi
mov dword [esi], 0x460224
call fcn.00447268
add esp, 4
cmp dword [ebp + 0x24], edi
jb 0x4370c6
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.0044849d
add esp, 4
mov dword [ebp + 0x24], 0xf
mov dword [ebp + 0x20], ebx
mov byte [ebp + 0x10], bl
mov ecx, dword [esp + 0x200]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1e8]
xor ecx, esp
call fcn.004484a8
add esp, 0x1f8
ret