Function at 0x439e10
Capabilities:
Write file on windows

Disassembly:
push esi
sub esp, 0x34
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ecx
mov eax, dword [0x495d10]
sar eax, 8
xor eax, 0xb1d09bd
mov dword [0x491a18], eax
mov eax, dword [0x48e4c8]
add eax, 0xc7e9b536
mov dword [0x48e4c8], eax
cmp dword [0x49a0b4], 0
jne 0x439e76
mov dword [0x488edc], 0x6b747ff4
call fcn.00438930
mov dword [0x49a0b4], eax
mov eax, dword [0x48f26c]
imul eax, eax, 0xdffedf5c
mov dword [0x48f26c], eax
mov eax, dword [0x48fbec]
add eax, 0xab2b99cb
mov dword [0x48fbec], eax
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x263c
call fcn.00426180
mov dword [esp + 0x28], eax
mov eax, dword [0x48a4cc]
add eax, 0xa0835a
mov dword [0x48a4cc], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455c88
mov dword [esp + 0x20], eax
mov eax, dword [0x4912fc]
and eax, 0x5f4279b
mov dword [0x4912fc], eax
mov eax, dword [esp + 0x28]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00414150
mov eax, dword [0x48b3c4]
xor eax, 0xffffffff
or eax, 0x91220c23
cmp eax, 0xf01d5983
jle 0x439f13
mov eax, dword [0x496e74]
xor eax, 0xffefd800
mov dword [0x496e74], eax
jmp 0x439f1d
mov dword [0x495eb4], 0xaa45af2c
cmp dword [esp + 0x20], 0
jne 0x43a03e
mov eax, 0xb4c0149e
mov ecx, dword [0x498504]
and ecx, 0x763b7d38
mov dword [0x498504], ecx
mov ecx, dword [0x4806c4]
mov edx, esp
mov dword [edx], 0x3e8
mov dword [esp + 0x1c], eax
call ecx
sub esp, 4
mov eax, dword [0x491d64]
add eax, 0x389e1b96
mov dword [0x491d64], eax
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x263c
call fcn.00426180
mov dword [esp + 0x24], eax
mov eax, dword [0x497998]
add eax, 0x7c057c24
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
jle 0x439fac
mov ax, word [0x4859ca]
movsx ecx, ax
not ecx
mov edx, dword [0x48b814]
add edx, ecx
mov dword [0x48b814], edx
mov eax, 0xd3d10b80
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], edx
mov dword [esp + 0x18], eax
call fcn.00455c88
mov dword [esp + 0x20], eax
mov eax, dword [0x48c83c]
mov ecx, eax
inc ecx
mov dword [0x48c83c], ecx
mov ecx, dword [esp + 0x18]
cmp ecx, eax
jg 0x43a00b
mov eax, dword [0x48a3f8]
imul eax, eax, 0x880506d9
xor eax, 0xb7e7e56
mov ecx, dword [0x48ca00]
imul ecx, eax
mov dword [0x48ca00], ecx
jmp 0x43a01a
mov eax, dword [0x499068]
or eax, 0x4d8f74ab
mov dword [0x499068], eax
mov eax, dword [esp + 0x24]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00414150
mov eax, dword [0x499498]
imul eax, eax, 0xc5ef6d8c
mov dword [0x499498], eax
mov eax, dword [0x49486c]
and eax, 0xfbf8db67
mov dword [0x49486c], eax
cmp dword [esp + 0x20], 0
je 0x43a0db
mov ax, word [0x484602]
mov cx, ax
mov edx, ecx
inc edx
mov ax, dx
mov word [0x484602], ax
mov edx, 0x654dc5df
sub edx, ecx
mov ax, word [0x486612]
mov cx, ax
xor ecx, edx
mov ax, cx
mov word [0x486612], ax
mov ecx, dword [esp + 0x20]
mov edx, esp
mov dword [edx + 0xc], ecx
mov dword [edx + 8], 1
mov dword [edx + 4], 4
mov dword [edx], 0x49a0b4
call fcn.00455e3b
mov dword [0x4927b0], 0xf17f5b7e
mov ecx, dword [esp + 0x20]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x14], eax
call fcn.00455f29
mov ecx, dword [0x48c0e0]
and ecx, 0x3004250
mov dword [0x48c0e0], ecx
mov dword [esp + 0x10], eax
mov eax, dword [0x496770]
mov ecx, eax
inc ecx
mov dword [0x496770], ecx
mov ecx, 0x5bf76ada
sub ecx, eax
mov eax, dword [0x495754]
or ecx, eax
mov eax, dword [0x494e18]
and eax, ecx
mov dword [0x494e18], eax
add esp, 0x34
pop esi
ret