Function at 0x42ee70
Capabilities:
Write file on windows

Disassembly:
push edi
push esi
sub esp, 0x34
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ecx
mov eax, dword [0x49a45c]
imul eax, eax, 0x60de28d4
mov dword [0x49a45c], eax
mov dword [0x497194], 0xe41ffb3e
cmp dword [0x49f51c], 0
jne 0x42eef5
mov eax, dword [0x497200]
mov ecx, eax
dec ecx
mov dword [0x497200], ecx
xor eax, 0x484333f4
mov ecx, dword [0x494978]
sub ecx, eax
mov dword [0x494978], ecx
call fcn.00436320
mov dword [0x49f51c], eax
mov dx, word [0x49cd3a]
movsx eax, dx
xor eax, 0xbc8fe3fe
mov ecx, dword [0x493de0]
imul ecx, eax
mov dword [0x493de0], ecx
mov ax, word [0x49de1c]
mov cx, ax
and ecx, 0xd8bc
mov ax, cx
mov word [0x49de1c], ax
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0x44d7
call fcn.004179d0
mov dword [esp + 0x28], eax
mov eax, dword [0x49a390]
imul eax, eax, 0xc2313ca
mov dword [0x49a390], 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.0045618f
mov dword [esp + 0x20], eax
mov si, word [0x49d206]
mov ax, si
and eax, 0xefa3
mov si, ax
mov word [0x49d206], si
mov eax, dword [esp + 0x28]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.004412d0
mov eax, dword [0x495df4]
add eax, 0x22fe574f
mov dword [0x495df4], eax
cmp dword [esp + 0x20], 0
jne 0x42f0e0
mov eax, 0x2767661b
mov dword [0x495ff0], 0xcc69c0a9
mov ecx, dword [0x493ca4]
mov edx, esp
mov dword [edx], 0x450
mov dword [esp + 0x1c], eax
call ecx
sub esp, 4
mov eax, dword [0x4972a0]
mov ecx, eax
inc ecx
mov dword [0x4972a0], ecx
mov ecx, dword [0x495190]
imul ecx, ecx, 0x4d2deb43
and eax, ecx
mov ecx, dword [0x499ba0]
or ecx, eax
mov dword [0x499ba0], ecx
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x44d7
call fcn.004179d0
mov dword [esp + 0x24], eax
mov eax, dword [0x4942b8]
mov ecx, eax
dec ecx
mov dword [0x4942b8], ecx
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
jl 0x42f02e
mov eax, dword [0x494160]
or eax, 0x20d816b2
mov ecx, dword [0x494adc]
xor ecx, eax
mov dword [0x494adc], ecx
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.0045618f
mov dword [esp + 0x20], eax
mov eax, dword [0x4942d8]
xor eax, 0xffffffff
cmp eax, 0xcff27a83
jl 0x42f082
mov eax, dword [0x495fcc]
mov ecx, dword [0x494804]
mov edx, ecx
inc edx
mov dword [0x494804], edx
sub eax, ecx
xor eax, 0x983a9da1
mov ecx, dword [0x494c50]
or ecx, eax
mov dword [0x494c50], ecx
mov eax, 0xb5ffff41
mov ecx, dword [esp + 0x24]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 3
mov dword [esp + 0x18], eax
call fcn.004412d0
mov si, word [0x49d2a4]
mov ax, si
inc eax
mov di, ax
mov word [0x49d2a4], di
movsx eax, si
mov ecx, dword [esp + 0x18]
cmp ecx, eax
jle 0x42f0db
mov ax, word [0x49b3dc]
mov cx, ax
or ecx, 0x158c
mov ax, cx
mov word [0x49b3dc], ax
jmp 0x42f0e0
mov eax, dword [0x4969a0]
add eax, 0x383ce655
mov dword [0x4969a0], eax
cmp dword [esp + 0x20], 0
je 0x42f175
mov ax, word [0x49e938]
mov cx, ax
or ecx, 0xe674
mov ax, cx
mov word [0x49e938], 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], 0x49f51c
call fcn.00456342
mov si, word [0x49dc6a]
mov cx, si
add ecx, 0x2e90696b
mov si, cx
mov word [0x49dc6a], si
mov ecx, dword [esp + 0x20]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x14], eax
call fcn.00456430
mov ecx, dword [0x495e08]
imul ecx, ecx, 0xf7feb9d7
mov dword [0x495e08], ecx
mov dword [esp + 0x10], eax
mov eax, dword [0x495060]
and eax, 0xda4f2b3e
mov dword [0x495060], eax
add esp, 0x34
pop esi
pop edi
ret