Function at 0x425243
Capabilities:
Write file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x6b0
mov ecx, dword [esp + 0x6c4]
mov eax, dword [0x488f38]
mov edx, dword [0x48a960]
sub eax, edx
xor dword [0x487ef0], eax
call fcn.00426bd6
cmp eax, 0x8031
jb 0x425683
mov eax, dword [0x48c20c]
add eax, 0x5a90
mov cx, word [0x490a64]
or ecx, eax
mov word [0x490a64], cx
mov eax, dword [0x489a30]
add eax, 0x70f2c4c3
or dword [0x4870dc], eax
mov ax, word [0x48f85c]
imul eax, eax, 0x28b0
mov word [0x48f85c], ax
mov ax, word [0x490c62]
cwde
and dword [0x488470], eax
lea esi, [esp + 0x568]
push esi
call fcn.00423cd5
add esp, 4
mov edi, eax
mov ax, word [0x4906e6]
lea ecx, [eax + 1]
mov word [0x4906e6], cx
cwde
add dword [0x48d98c], eax
call fcn.00414911
and al, 3
movzx eax, al
add eax, 7
lea ecx, [esp + edi + 0x568]
push eax
push ecx
call fcn.00430a3c
add esp, 8
mov ax, word [0x48e2fa]
dec eax
mov word [0x48e2fa], ax
cwde
or eax, 0xfebb97cf
add dword [0x488cc8], eax
push 5
push 0xeeb
call fcn.00422ac4
add esp, 8
mov edi, eax
mov eax, dword [0x48bc6c]
mov ecx, 0xa4af14f8
sub ecx, eax
mov ax, word [0x48fec2]
and eax, ecx
mov word [0x48fec2], ax
push edi
push esi
call fcn.0043dc70
add esp, 8
mov eax, dword [0x48b438]
lea ecx, [eax - 1]
mov dword [0x48b438], ecx
cmp eax, 0xcbdd37f9
je 0x425384
mov eax, dword [0x48d6f8]
cmp eax, 0x47741983
jl 0x425384
mov eax, dword [0x48afe4]
sar eax, 9
and dword [0x48b048], eax
mov ebp, 3
push ebp
push 0x48f0
call fcn.00422ac4
add esp, 8
mov ebx, eax
or dword [0x4888cc], 0x2c22de69
push edi
push 5
call fcn.004228ac
add esp, 8
or dword [0x489954], 0x194c964f
push ebx
push esi
call fcn.0043e036
add esp, 8
mov edi, eax
mov eax, dword [0x48d50c]
lea ecx, [eax + 1]
mov dword [0x48d50c], ecx
and eax, 0xf095c965
mov ecx, dword [0x489160]
xor ecx, eax
add dword [0x48a5b4], ecx
push ebx
push ebp
call fcn.004228ac
add esp, 8
mov eax, dword [0x48c2d4]
mov ax, word [0x491366]
xor dword [0x4888e8], 0x26cb7565
test edi, edi
je 0x425650
mov ax, word [0x4905f8]
and eax, 0x8a8c
mov word [0x4905f8], ax
mov ax, word [0x490dc0]
cwde
xor eax, 0x6c09a35b
mov ecx, dword [0x488014]
imul ecx, eax
mov dword [0x488014], ecx
mov esi, dword [esp + 0x6c4]
mov ecx, esi
call fcn.00426bd6
mov ebx, eax
mov ecx, esi
call fcn.00415900
push edi
push 1
push ebx
push eax
call fcn.0043e3df
add esp, 0x10
or dword [0x48c290], 0xb24aff23
push edi
call fcn.0043e4c5
add esp, 4
mov ax, word [0x48f0ec]
imul eax, eax, 0x5de0
mov cx, word [0x48e7fa]
add ecx, eax
mov word [0x48e7fa], cx
mov ecx, esi
call fcn.00430a34
mov eax, dword [0x48ad98]
shr eax, 1
mov cx, word [0x48fc48]
imul ecx, eax
imul eax, ecx, 0x3cb6e637
mov word [0x48fc48], ax
xor ebx, ebx
mov byte [esp + 0x136], bl
and dword [0x48c6dc], 0x5649a044
mov eax, 0x134
lea edi, [esp + 2]
push eax
push edi
push 0
call dword [0x486e4c]
xor dword [0x487a64], 0xf35fff9f
mov byte [esp + 0x567], bl
mov word [0x48e294], 0xece7
mov ebp, 0x15
push ebp
push 0x5c9e
call fcn.00422ac4
add esp, 8
mov esi, eax
mov eax, dword [0x48aeb8]
imul eax, eax, 0x519eadda
mov dword [0x48aeb8], eax
lea ebx, [esp + 0x137]
push dword [0x4921fc]
push dword [0x4921e4]
push edi
push esi
push ebx
call fcn.00405450
add esp, 0x14
mov eax, dword [0x48db98]
imul eax, eax, 0xafc71e83
mov dword [0x48db98], eax
push esi
push ebp
call fcn.004228ac
add esp, 8
or dword [0x48984c], 0x360cc6c2
push dword [0x4921fc]
call fcn.00410f12
add esp, 4
mov eax, dword [0x48d378]
sar eax, 9
imul eax, eax, 0xec8a1a22
xor dword [0x48985c], eax
push ebx
lea esi, [esp + 0x56c]
push esi
call fcn.00405923
add esp, 8
xor dword [0x486f48], 0x62dcc9f7
push 0x431
push ebx
call fcn.00430c4a
add esp, 8
mov ax, word [0x491394]
cwde
mov ecx, dword [0x4889fc]
not ecx
and ecx, eax
cmp ecx, 0x3bace9e0
jl 0x4255d7
mov eax, dword [0x48c248]
shl eax, 0xa
add eax, 0x5916
mov cx, word [0x490c58]
or ecx, eax
mov word [0x490c58], cx
push 0x135
push edi
call fcn.00430c4a
add esp, 8
or dword [0x48710c], 0x221962e4
push 0x1620c
call dword [0x486ea8]
mov eax, dword [0x48cfa8]
mov ecx, dword [0x489a00]
dec ecx
mov dword [0x489a00], ecx
imul ecx, ecx, 0xbb0f8c70
add ecx, eax
mov dword [0x48c6b0], ecx
push esi
call dword [0x486df8]
mov ax, word [0x4903a6]
cwde
imul eax, eax, 0x13872723
mov ecx, dword [0x48a8b8]
and ecx, 0xcae1dcd7
cmp eax, ecx
jg 0x425650
mov eax, dword [0x48d920]
mov ecx, 0x98129bb6
sub ecx, eax
add dword [0x48b274], ecx
mov eax, dword [0x48ced8]
imul eax, eax, 0x6a4e0d27
xor dword [0x488298], eax
push 0x148
push esi
call fcn.00430c4a
add esp, 8
mov eax, dword [0x48b56c]
mov ecx, dword [0x487148]
imul ecx, eax
mov dword [0x487148], ecx
mov eax, dword [0x48850c]
mov cx, word [0x48e7be]
and ecx, eax
and ecx, 0xd104
mov word [0x48e7be], cx
add esp, 0x6b0
pop esi
pop edi
pop ebx
pop ebp
ret