Function at 0x446400
Capabilities:
Write file on windows

Disassembly:
push esi
sub esp, 0x2c
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], ecx
mov eax, dword [0x498d5c]
mov ecx, eax
inc ecx
mov dword [0x498d5c], ecx
mov ecx, 0x3c1969f5
sub ecx, eax
xor ecx, 0xc97b8332
mov eax, dword [0x499040]
xor eax, 0xffffffff
cmp ecx, eax
jl 0x446462
mov eax, dword [0x495d90]
dec eax
mov dword [0x495d90], eax
imul eax, eax, 0x7c3fe063
mov ecx, dword [0x4993b4]
xor eax, ecx
xor eax, 0xe0d85f7b
mov dword [0x4993b4], eax
mov eax, dword [0x49ca10]
add eax, 0xa20e9b2f
mov dword [0x49ca10], eax
cmp dword [0x49d60c], 0
jne 0x446508
mov eax, dword [0x49822c]
cmp eax, 0xbf7d7f3f
je 0x4464ea
mov eax, 0x2bd1dca9
mov cx, word [0x4925ae]
mov dx, cx
inc edx
mov si, dx
mov word [0x4925ae], si
movsx edx, cx
cmp eax, edx
jg 0x4464e5
mov eax, dword [0x49b914]
not eax
and eax, 0xe163c7c
xor eax, 0x948e6187
mov ecx, dword [0x49b340]
xor ecx, 0xffffffff
and ecx, 0xfb5ce4a0
cmp eax, ecx
jl 0x4464e0
jmp 0x4464e0
jmp 0x4464e5
jmp 0x4464ea
call fcn.0041d050
mov dword [0x49d60c], eax
mov eax, dword [0x495840]
and eax, 0x197cfbcb
xor eax, 0x68b7c969
mov dword [0x49978c], eax
mov eax, dword [0x497b3c]
and eax, 0x72c3e725
mov dword [0x497b3c], eax
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x1da5
call fcn.0044dc30
mov dword [esp + 0x20], eax
mov cx, word [0x490626]
mov ax, cx
imul eax, eax, 0x6b86d177
mov cx, ax
mov word [0x490626], cx
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
call fcn.00455f80
mov dword [esp + 0x18], eax
mov cx, word [0x491466]
mov ax, cx
imul eax, eax, 0x499003e0
mov cx, ax
mov word [0x491466], cx
mov eax, dword [esp + 0x20]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], 3
call fcn.004387b0
mov eax, dword [0x49580c]
add eax, 0x923ebda8
mov dword [0x49580c], eax
cmp dword [esp + 0x18], 0
jne 0x44666b
mov ax, word [0x490290]
mov cx, ax
or ecx, 0xfff7
mov ax, cx
mov word [0x490290], ax
mov ecx, dword [0x4901e4]
mov edx, esp
mov dword [edx], 0x458
call ecx
sub esp, 4
mov ecx, dword [0x49a028]
imul ecx, ecx, 0x471c9628
mov dword [0x49a028], ecx
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0x1da5
call fcn.0044dc30
mov dword [esp + 0x1c], eax
mov eax, dword [0x495544]
add eax, 0xdeb168be
mov dword [0x495544], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455f80
mov dword [esp + 0x18], eax
mov eax, dword [0x496ba8]
mov ecx, eax
dec ecx
mov dword [0x496ba8], ecx
cmp eax, 0xcb4f75d1
jge 0x44664d
mov eax, dword [0x49c710]
add eax, 0xa5537415
mov dword [0x49c710], eax
mov eax, dword [esp + 0x1c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.004387b0
mov dword [0x49bbc8], 0x20688197
mov eax, dword [0x49bf7c]
and eax, 0x3bfd7239
mov dword [0x49bf7c], eax
cmp dword [esp + 0x18], 0
je 0x446722
mov eax, dword [0x49c3e0]
mov ecx, eax
dec ecx
mov dword [0x49c3e0], ecx
add eax, 0x3782e3b3
mov dx, word [0x4928c0]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x4928c0], dx
mov eax, dword [esp + 0x18]
mov ecx, esp
mov dword [ecx + 0xc], eax
mov dword [ecx + 8], 1
mov dword [ecx + 4], 4
mov dword [ecx], 0x49d60c
call fcn.00456133
mov ecx, dword [0x4957b8]
dec ecx
mov dword [0x4957b8], ecx
mov dx, word [0x4937fe]
mov si, dx
or esi, ecx
mov dx, si
mov word [0x4937fe], dx
mov ecx, dword [esp + 0x18]
mov esi, esp
mov dword [esi], ecx
mov dword [esp + 0x14], eax
call fcn.00456221
mov dx, word [0x494508]
mov cx, dx
xor ecx, 0x7ece
mov dx, cx
mov word [0x494508], dx
mov dword [esp + 0x10], eax
mov eax, dword [0x49b8c4]
add eax, 0x9488100
mov dword [0x49b8c4], eax
add esp, 0x2c
pop esi
ret