Function at 0x448f30
Capabilities:
Write file on windows

Disassembly:
push esi
sub esp, 0x38
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], ecx
mov dx, word [0x4ad5ae]
mov ax, dx
dec eax
mov si, ax
mov word [0x4ad5ae], si
movsx eax, dx
or eax, 0xf73cbf37
and eax, 0xf7fffff7
mov ecx, dword [0x49e264]
imul ecx, eax
mov dword [0x49e264], ecx
mov eax, dword [0x4a5c00]
xor eax, 0xfb4d31e7
mov dword [0x49caf8], eax
cmp dword [0x4b6a2c], 0
jne 0x448fe5
mov eax, 0x21010400
mov ecx, dword [0x49c920]
mov edx, dword [0x49b09c]
xor edx, ecx
mov dword [0x49b09c], edx
mov dword [esp + 0x20], eax
call fcn.0040cdb0
mov dword [0x4b6a2c], eax
mov eax, dword [0x498700]
mov ecx, eax
dec ecx
mov dword [0x498700], ecx
or eax, 0x2a0a271e
mov ecx, dword [esp + 0x20]
cmp ecx, eax
jg 0x448fe0
mov word [0x4aab2c], 0x4202
jmp 0x448fe5
mov eax, 0xa51ecf0a
mov ecx, dword [0x4a71d8]
mov edx, 0x59654317
sub edx, ecx
and edx, 0xf79
mov si, word [0x4aed6a]
mov cx, si
imul ecx, edx
mov si, cx
mov word [0x4aed6a], si
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0x6e6
mov dword [esp + 0x1c], eax
call fcn.0042df40
mov dword [esp + 0x2c], eax
mov eax, dword [0x4a8990]
imul eax, eax, 0x20fdff18
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
je 0x44906c
mov eax, 0x5986f12e
mov ecx, dword [0x4a8af8]
sar ecx, 5
cmp eax, ecx
je 0x449067
mov dword [0x4970fc], 0x8be40343
jmp 0x44906c
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455bf3
mov dword [esp + 0x24], eax
mov dword [0x497064], 0xd7efdbfe
mov eax, dword [esp + 0x2c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.0041e970
mov si, word [0x4b3e5c]
movsx eax, si
sar eax, 7
xor eax, 0x25c4a0a
mov ecx, dword [0x495c88]
sub ecx, eax
mov dword [0x495c88], ecx
cmp dword [esp + 0x24], 0
jne 0x4491b9
mov eax, 0x305c2e38
mov ecx, dword [0x49eb68]
add ecx, 0xbff5fffa
mov dword [0x49eb68], ecx
mov ecx, dword [0x491da4]
mov edx, esp
mov dword [edx], 0x42d
mov dword [esp + 0x18], eax
call ecx
sub esp, 4
mov eax, dword [0x49a9e4]
add eax, 0x3d9ff09d
mov dword [0x49a9e4], eax
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x6e6
call fcn.0042df40
mov dword [esp + 0x28], eax
mov eax, dword [0x49c31c]
imul eax, eax, 0x328b688d
xor eax, 0xc79ed165
mov ecx, dword [0x49a7dc]
or ecx, eax
mov dword [0x49a7dc], ecx
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455bf3
mov dword [esp + 0x24], eax
mov eax, dword [0x4a1d54]
and eax, 0xe69f473c
mov dword [0x4a1d54], eax
mov eax, dword [esp + 0x28]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.0041e970
mov eax, dword [0x499fb8]
inc eax
mov dword [0x499fb8], eax
xor eax, 0x88d304d5
or eax, 0x6264a5b2
mov ecx, dword [esp + 0x18]
cmp ecx, eax
jne 0x4491b4
mov ax, word [0x4b16b2]
mov cx, ax
and ecx, 0x9ea7
mov ax, cx
mov word [0x4b16b2], ax
jmp 0x4491b9
mov dword [0x4946b8], 0xe260b762
cmp dword [esp + 0x24], 0
je 0x449256
mov ax, word [0x4ac94c]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x4ac94c], ax
movsx ecx, ax
mov edx, dword [0x496ecc]
sub edx, ecx
mov dword [0x496ecc], edx
mov ecx, dword [esp + 0x24]
mov edx, esp
mov dword [edx + 0xc], ecx
mov dword [edx + 8], 1
mov dword [edx + 4], 4
mov dword [edx], 0x4b6a2c
call fcn.004562d6
mov ecx, dword [0x4a8938]
add ecx, 0x15089
mov dword [0x4a8938], ecx
mov ecx, dword [esp + 0x24]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x14], eax
call fcn.004563c4
mov ecx, dword [0x4a68fc]
dec ecx
mov dword [0x4a68fc], ecx
mov edx, dword [0x491f84]
sub edx, ecx
mov dword [0x491f84], edx
mov dword [esp + 0x10], eax
mov eax, dword [0x49eb48]
imul eax, eax, 0x9d97c9fb
mov dword [0x49eb48], eax
add esp, 0x38
pop esi
ret