Function at 0x4358c0
Capabilities:
Write file on windows

Disassembly:
push esi
sub esp, 0x30
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], ecx
mov dx, word [0x49d6ca]
movsx eax, dx
not eax
add eax, 0x4f3678d5
mov dword [0x497ba4], eax
mov eax, dword [0x49a4b4]
mov ecx, dword [0x499f10]
and ecx, eax
mov dword [0x499f10], ecx
cmp dword [0x49ee30], 0
jne 0x435932
mov eax, dword [0x496528]
and eax, 0x7d8165c6
mov dword [0x496528], eax
call fcn.00435c10
mov dword [0x49ee30], eax
mov eax, dword [0x496ed0]
and eax, 0x7e00b549
mov dword [0x496ed0], eax
mov eax, 0xb7c38875
mov ecx, dword [0x4955dc]
or ecx, 0xffef37fb
mov edx, dword [0x494e24]
and edx, ecx
mov dword [0x494e24], edx
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0xf2b
mov dword [esp + 0x18], eax
call fcn.00418300
mov dword [esp + 0x24], eax
mov si, word [0x49d870]
movsx eax, si
mov ecx, dword [0x499544]
add ecx, eax
mov dword [0x499544], ecx
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455408
mov dword [esp + 0x1c], eax
mov si, word [0x49b5c6]
movsx eax, si
shl eax, 9
xor eax, 0xf8131787
mov ecx, dword [esp + 0x18]
cmp ecx, eax
jne 0x435a01
mov eax, 0xf4ef744b
mov cx, word [0x49e3ce]
movsx edx, cx
imul edx, edx, 0x6353229f
cmp eax, edx
jge 0x4359fc
mov eax, dword [0x499054]
sub eax, 0x3904eeec
and eax, 0xc189eaaf
cmp eax, 0xe365417b
je 0x4359f7
jmp 0x4359f7
jmp 0x4359fc
jmp 0x435a01
mov eax, dword [esp + 0x24]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00437a50
mov eax, dword [0x496d28]
add eax, 0x6ebed1af
or eax, 0x59e6
mov dx, word [0x49cb38]
mov cx, dx
xor ecx, eax
mov dx, cx
mov word [0x49cb38], dx
cmp dword [esp + 0x1c], 0
jne 0x435b68
mov eax, dword [0x498e9c]
imul eax, eax, 0x8e903ac0
mov dword [0x498e9c], eax
mov eax, dword [0x4949e4]
mov ecx, esp
mov dword [ecx], 0x44e
call eax
sub esp, 4
mov eax, dword [0x496984]
imul eax, eax, 0x4d00862f
mov dword [0x496984], eax
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0xf2b
call fcn.00418300
mov dword [esp + 0x20], eax
mov dx, word [0x49ce18]
mov ax, dx
xor eax, 0x88fc
mov dx, ax
mov word [0x49ce18], dx
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], ecx
call fcn.00455408
mov dword [esp + 0x1c], eax
mov eax, dword [0x49a518]
mov dword [0x49ae44], eax
mov eax, dword [esp + 0x20]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00437a50
mov eax, dword [0x498904]
sar eax, 2
add eax, 0xed87b3b8
cmp eax, 0x1b00510
jge 0x435b0a
mov eax, dword [0x4978c0]
xor eax, 0x1fa8a759
mov dword [0x4978c0], eax
jmp 0x435b63
mov eax, dword [0x494d4c]
inc eax
mov dword [0x494d4c], eax
imul eax, eax, 0xc8d0adb7
cmp eax, 0xb72e725
jge 0x435b3a
mov eax, dword [0x497768]
or eax, 0x3bc775d7
mov dword [0x497768], eax
jmp 0x435b5e
mov eax, 0x10425e80
mov cx, word [0x49b1bc]
movsx edx, cx
sar edx, 4
cmp eax, edx
jle 0x435b59
jmp 0x435b59
jmp 0x435b5e
jmp 0x435b63
jmp 0x435b68
mov eax, dword [0x49a230]
and eax, 0x3cec0c68
mov dword [0x49a230], eax
cmp dword [esp + 0x1c], 0
je 0x435bef
mov eax, dword [0x49acd8]
mov dword [0x496a3c], eax
mov eax, dword [esp + 0x1c]
mov ecx, esp
mov dword [ecx + 0xc], eax
mov dword [ecx + 8], 1
mov dword [ecx + 4], 4
mov dword [ecx], 0x49ee30
call fcn.004555bb
mov ecx, dword [0x49add0]
add ecx, 0xe210c45a
mov dword [0x49add0], ecx
mov ecx, dword [esp + 0x1c]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x14], eax
call fcn.004556a9
mov si, word [0x49c3a8]
mov cx, si
add ecx, 0x1a0ff4ef
mov si, cx
mov word [0x49c3a8], si
mov dword [esp + 0x10], eax
mov ax, word [0x49d4b4]
mov cx, ax
imul ecx, ecx, 0x113580cf
mov ax, cx
mov word [0x49d4b4], ax
add esp, 0x30
pop esi
ret