Function at 0x41ea80
Capabilities:
Write file on windows

Disassembly:
push ebx
push edi
push esi
sub esp, 0x10
mov ax, word [0x483d5e]
imul eax, eax, 0x2589
mov word [0x483d5e], ax
add dword [0x4828d0], 0xf6aa4d69
cmp dword [0x48512c], 0
jne 0x41eae1
mov dword [0x4803c0], 0x4c220f4
call fcn.00409700
mov dword [0x48512c], eax
mov eax, dword [0x480e78]
cmp eax, 0x4553f8fe
jl 0x41ead7
or dword [0x481030], 0x3a6df02c
jmp 0x41eae1
or dword [0x4821d0], 0xbff7ffff
mov ebx, dword [esp + 0x20]
mov eax, dword [0x482d9c]
lea ecx, [eax - 1]
mov dword [0x482d9c], ecx
mov ecx, dword [0x4824b4]
sar ecx, 9
sub eax, ecx
cmp eax, 0x69cf8951
je 0x41eb0f
and dword [0x481024], 0x94fb990c
mov dword [esp + 4], 3
mov dword [esp], 0x8e2
call fcn.0044b290
mov edi, eax
mov eax, dword [0x4812f4]
and eax, 0x951c099d
add dword [0x481d60], eax
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00452e4e
mov esi, eax
or dword [0x481994], 0x1837d84d
mov dword [0x481a20], 0xeb4485db
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41ebaa
or dword [0x481524], 0x81e1fefa
mov byte [edi], 0
mov byte [edi + 1], 0
mov byte [edi + 2], 0
mov byte [edi + 3], 0
mov byte [edi + 4], 0
mov byte [edi + 5], 0
mov byte [edi + 6], 0
mov eax, dword [0x482254]
shl eax, 5
mov ecx, dword [0x482e3c]
lea edx, [ecx - 1]
mov dword [0x482e3c], edx
mov edx, dword [0x482470]
sar edx, 5
and edx, ecx
and edx, eax
add dword [0x481784], edx
mov dword [esp], edi
call fcn.0044f620
mov eax, dword [0x4809bc]
imul eax, eax, 0xe0e5fd0f
mov dword [0x4809bc], eax
mov ax, word [0x4841f6]
and eax, 0xcb14
mov word [0x4841f6], ax
test esi, esi
je 0x41ec2c
mov eax, dword [0x482b80]
add dword [0x482e88], eax
jmp 0x41edb3
mov ax, word [0x483cf4]
add eax, 0xffffa484
mov word [0x483cf4], ax
mov dword [esp], 0x44d
call dword [0x4800a0]
sub esp, 4
mov eax, dword [0x480f88]
mov ecx, dword [0x4816a0]
sub ecx, eax
mov dword [0x4816a0], ecx
mov dword [esp + 4], 3
mov dword [esp], 0x8e2
call fcn.0044b290
mov edi, eax
xor dword [0x480648], 0x974b229
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00452e4e
mov esi, eax
mov eax, dword [0x4817c0]
mov cx, word [0x4831a0]
movsx ecx, cx
mov dx, word [0x484392]
movsx edx, dx
xor edx, eax
xor edx, ecx
mov eax, dword [0x482560]
dec eax
mov dword [0x482560], eax
xor eax, 0x64209be0
cmp edx, eax
jne 0x41ecc8
mov word [0x483c30], 0x2484
mov dword [0x481a20], 0xeb4485db
mov eax, dword [0x48038c]
add eax, 0x563b
and eax, 0x5d80
mov cx, word [0x48456c]
or ecx, eax
mov word [0x48456c], cx
mov eax, dword [0x482ce4]
lea ecx, [eax - 1]
mov dword [0x482ce4], ecx
imul eax, eax, 0x46ea1921
mov ecx, dword [0x482cf8]
and ecx, eax
mov eax, dword [0x4823ec]
or eax, 0x78062fce
cmp ecx, eax
je 0x41ed25
or dword [0x481524], 0x81e1fefa
mov byte [edi], 0
mov byte [edi + 1], 0
mov byte [edi + 2], 0
mov byte [edi + 3], 0
mov byte [edi + 4], 0
mov byte [edi + 5], 0
mov byte [edi + 6], 0
mov eax, dword [0x482254]
shl eax, 5
mov ecx, dword [0x482e3c]
lea edx, [ecx - 1]
mov dword [0x482e3c], edx
mov edx, dword [0x482470]
sar edx, 5
and edx, ecx
and edx, eax
add dword [0x481784], edx
mov dword [esp], edi
call fcn.0044f620
mov eax, dword [0x4809bc]
imul eax, eax, 0xe0e5fd0f
mov dword [0x4809bc], eax
mov eax, dword [0x48264c]
mov cx, word [0x483e96]
imul ecx, ecx, 0xded0c0ad
add ecx, eax
mov ax, word [0x484160]
and eax, ecx
mov word [0x484160], ax
mov eax, dword [0x482b80]
add dword [0x482e88], eax
test esi, esi
je 0x41ee1d
mov ax, word [0x48409c]
xor eax, 0x471c
mov word [0x48409c], ax
mov dword [esp + 0xc], esi
mov dword [esp + 8], 1
mov dword [esp + 4], 4
mov dword [esp], 0x48512c
call fcn.004536a5
inc dword [0x482138]
mov eax, dword [0x482950]
mov eax, dword [0x4804e0]
mov dword [esp], esi
call fcn.00453793
mov eax, dword [0x481fc0]
cmp eax, 0x97c3e427
jl 0x41ee1d
mov eax, dword [0x4824dc]
mov cx, word [0x483524]
add ecx, eax
mov word [0x483524], cx
mov eax, dword [0x480244]
and eax, 0x6c09e748
cmp eax, 0x14f81399
ja 0x41ee38
xor dword [0x480298], 0xffed7dba
add esp, 0x10
pop esi
pop edi
pop ebx
ret