Function at 0x44c080
Capabilities:
Write file on windows

Disassembly:
push ebx
push edi
push esi
sub esp, 0x6e8
mov eax, dword [esp + 0x6f8]
mov dword [esp + 0x6e4], eax
mov eax, dword [0x49a540]
or eax, 0xd433
mov cx, word [0x4a297a]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x4a297a], cx
mov eax, dword [esp + 0x6e4]
mov ecx, eax
call fcn.0042f050
cmp eax, 0x8022
jbe 0x44c7e2
mov eax, dword [0x49bf1c]
xor eax, 0x755f39be
mov dword [0x49bf1c], eax
mov eax, dword [0x49a784]
add eax, 0xe8a8b5ea
mov dword [0x49a784], eax
mov eax, dword [0x496bfc]
inc eax
mov dword [0x496bfc], eax
cmp eax, 0x9c356756
jle 0x44c11c
mov ax, word [0x4a642a]
mov cx, ax
add ecx, 0x96f9afba
mov ax, cx
mov word [0x4a642a], ax
mov eax, 0x14101401
mov ecx, dword [0x49f4c0]
dec ecx
mov dword [0x49f4c0], ecx
cmp eax, ecx
jle 0x44c14a
mov eax, dword [0x495dc0]
or eax, 0xdad0f361
mov dword [0x495dc0], eax
jmp 0x44c179
mov eax, dword [0x49a7bc]
dec eax
mov dword [0x49a7bc], eax
and eax, 0x6bb3cee8
mov ecx, dword [0x499c28]
mov edx, ecx
dec edx
mov dword [0x499c28], edx
xor eax, ecx
mov ecx, dword [0x4954a8]
sub ecx, eax
mov dword [0x4954a8], ecx
mov eax, esp
lea ecx, [esp + 0x59a]
mov dword [eax], ecx
call fcn.0043a660
mov dword [esp + 0x594], eax
mov dword [0x49e954], 0x200084a
call fcn.00428730
movzx ecx, al
and ecx, 3
add ecx, 7
mov edx, dword [esp + 0x594]
lea edx, [esp + edx + 0x59a]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], edx
call fcn.0041ba40
mov di, word [0x4a8144]
mov cx, di
or ecx, 0xa961
mov di, cx
mov word [0x4a8144], di
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x40a5
call fcn.00416c10
mov dword [esp + 0x6e0], eax
mov eax, dword [0x49fad0]
sar eax, 5
add eax, 0x94aa5fe7
mov ecx, dword [0x498698]
or eax, ecx
cmp eax, 0x22d2ddee
jne 0x44c22b
mov eax, dword [0x49aff4]
and eax, 0x167e769
mov dword [0x49aff4], eax
jmp 0x44c23a
mov eax, dword [0x49634c]
and eax, 0x4956613f
mov dword [0x49634c], eax
mov eax, 0x1d7101f1
mov ecx, dword [esp + 0x6e0]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x59a]
mov dword [edx], ecx
mov dword [esp + 0x44], eax
call fcn.00456270
mov si, word [0x4a21e2]
mov cx, si
inc ecx
mov di, cx
mov word [0x4a21e2], di
movsx ecx, si
and ecx, 0x2a478a5c
mov edx, dword [esp + 0x44]
cmp edx, ecx
mov dword [esp + 0x40], eax
jge 0x44c29f
mov eax, dword [0x498f28]
or eax, 0x5364dc
mov dword [0x498f28], eax
jmp 0x44c2e9
mov ax, word [0x4a74d2]
movsx ecx, ax
xor ecx, 0xffffffff
imul ecx, ecx, 0xcd5d812
and ecx, 0xdd9e5b54
cmp ecx, 0xa88fa0f
jge 0x44c2e4
mov eax, dword [0x49d988]
not eax
imul eax, eax, 0x24607182
mov ecx, 0xd0b44c8
sub ecx, eax
mov eax, dword [0x497558]
imul eax, ecx
mov dword [0x497558], eax
jmp 0x44c2e9
mov eax, 0xf7a479f6
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0x1272
mov dword [esp + 0x3c], eax
call fcn.00416c10
mov dword [esp + 0x6dc], eax
mov eax, dword [0x493e3c]
add eax, 0x58c9095
mov dword [0x493e3c], eax
mov eax, dword [esp + 0x6e0]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.004097d0
mov eax, dword [0x49b7b8]
add eax, 0xb07b3656
mov dword [0x49b7b8], eax
mov eax, dword [esp + 0x6dc]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x59a]
mov dword [ecx], eax
call fcn.004564b0
mov dword [esp + 0x6d4], eax
mov eax, dword [0x496400]
and eax, 0x6842198a
or eax, 0xd422eb9b
mov ecx, dword [esp + 0x3c]
cmp ecx, eax
jle 0x44c3a0
mov ax, word [0x4a591a]
movsx ecx, ax
or ecx, 0x2dc62c8
mov edx, dword [0x49bd5c]
and edx, ecx
mov dword [0x49bd5c], edx
jmp 0x44c3aa
mov dword [0x498a2c], 0xf3e95c15
mov eax, dword [esp + 0x6dc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.004097d0
mov eax, dword [0x499488]
xor eax, 0x53f80928
mov dword [0x499488], eax
cmp dword [esp + 0x6d4], 0
je 0x44c799
mov eax, dword [0x496760]
imul eax, eax, 0xf6a48c21
mov dword [0x496760], eax
mov eax, dword [0x49dd10]
or eax, 0x8c7e
mov cx, word [0x4a3d18]
mov dx, cx
and edx, eax
mov cx, dx
mov word [0x4a3d18], cx
mov eax, dword [esp + 0x6d4]
mov ecx, dword [esp + 0x6e4]
mov dword [esp + 0x38], eax
call fcn.0042f050
mov ecx, dword [esp + 0x6e4]
mov dword [esp + 0x34], eax
call fcn.00420e80
mov ecx, esp
mov edx, dword [esp + 0x38]
mov dword [ecx + 0xc], edx
mov edx, dword [esp + 0x34]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov dword [ecx + 8], 1
call fcn.00456663
mov ecx, dword [0x495f54]
mov edx, dword [0x49c378]
mov esi, edx
dec esi
mov dword [0x49c378], esi
and edx, 0xe592853c
cmp ecx, edx
mov dword [esp + 0x30], eax
jne 0x44c489
mov eax, dword [0x4949e4]
and eax, 0x80c4191
mov dword [0x4949e4], eax
mov eax, dword [esp + 0x6d4]
mov ecx, esp
mov dword [ecx], eax
call fcn.00456751
mov ecx, dword [0x499ce8]
add ecx, 0xf68b3e65
mov dword [0x499ce8], ecx
mov ecx, dword [esp + 0x6e4]
mov dword [esp + 0x2c], eax
call fcn.00432ed0
mov dx, word [0x4a4830]
mov ax, dx
dec eax
mov dx, ax
mov word [0x4a4830], dx
movsx eax, dx
mov ecx, dword [0x4999b4]
inc ecx
mov dword [0x4999b4], ecx
cmp eax, ecx
jne 0x44c4fd
mov eax, dword [0x49d498]
imul eax, eax, 0xfbab318a
mov dword [0x49d498], eax
jmp 0x44c517
mov eax, dword [0x498464]
not eax
or eax, 0x75172903
mov ecx, dword [0x49cfb0]
and ecx, eax
mov dword [0x49cfb0], ecx
mov eax, 0x719e089a
mov byte [esp + 0x170], 0
mov ecx, dword [0x49d390]
mov edx, ecx
inc edx
mov dword [0x49d390], edx
add ecx, 0x65d34bf
cmp eax, ecx
jle 0x44c54b
mov dword [0x495438], 0xc3cc6cce
mov eax, dword [0x493c48]
mov ecx, esp
lea edx, [esp + 0x4a]
mov dword [ecx + 4], edx
mov dword [ecx + 8], 0x126
mov dword [ecx], 0
mov dword [esp + 0x28], edx
call eax
sub esp, 0xc
mov ecx, dword [0x4a100c]
add ecx, 0x1f71e87d
or ecx, 0x3a5c6d4a
mov edx, dword [0x49d538]
and edx, ecx
mov dword [0x49d538], edx
mov byte [esp + 0x593], 0
mov ecx, dword [0x4a0af8]
or ecx, 0xfffffcd7
mov dword [0x4a0af8], ecx
mov ecx, esp
mov dword [ecx + 4], 0x15
mov dword [ecx], 0x3f1a
mov dword [esp + 0x24], eax
call fcn.00416c10
mov dword [esp + 0x6d8], eax
mov si, word [0x4a48fe]
mov ax, si
inc eax
mov di, ax
mov word [0x4a48fe], di
movsx eax, si
mov si, word [0x4a880e]
mov cx, si
dec ecx
mov si, cx
mov word [0x4a880e], si
movsx ecx, si
mov si, word [0x4a2aaa]
mov dx, si
dec edx
mov si, dx
mov word [0x4a2aaa], si
movsx edx, si
imul ecx, edx
or eax, ecx
mov ecx, dword [0x499e70]
add ecx, eax
mov dword [0x499e70], ecx
mov eax, dword [0x4a9364]
mov ecx, dword [0x4a934c]
mov edx, dword [esp + 0x6d8]
mov ebx, esp
mov dword [ebx + 0x10], eax
mov dword [ebx + 0xc], ecx
mov eax, dword [esp + 0x28]
mov dword [ebx + 8], eax
mov dword [ebx + 4], edx
lea ecx, [esp + 0x171]
mov dword [ebx], ecx
mov dword [esp + 0x20], ecx
call fcn.00456fba
mov ecx, dword [0x4989dc]
or ecx, 0x3b5b09f4
mov dword [0x4989dc], ecx
mov ecx, dword [esp + 0x6d8]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x15
mov dword [esp + 0x1c], eax
call fcn.004097d0
mov eax, dword [0x497200]
and eax, 0x7c2e5bab
mov dword [0x497200], eax
mov eax, dword [0x4a9364]
mov ecx, esp
mov dword [ecx], eax
call fcn.004111e0
mov si, word [0x4a6d04]
mov cx, si
add ecx, 0xbbbf36bf
mov si, cx
mov word [0x4a6d04], si
mov ecx, esp
mov edx, dword [esp + 0x20]
mov dword [ecx + 4], edx
lea ebx, [esp + 0x59a]
mov dword [ecx], ebx
mov dword [esp + 0x18], eax
call fcn.00439770
mov dword [0x49e3c8], 0x2cda731
mov eax, esp
mov ecx, dword [esp + 0x20]
mov dword [eax], ecx
mov dword [eax + 4], 0x423
call fcn.004154b0
mov eax, dword [0x494638]
not eax
mov si, word [0x4a7410]
movsx ecx, si
add eax, ecx
xor eax, 0xb28b5480
cmp eax, 0xe32536e0
jge 0x44c728
mov eax, dword [0x49947c]
add eax, 0x49645efd
mov dword [0x49947c], eax
mov eax, esp
lea ecx, [esp + 0x4a]
mov dword [eax], ecx
mov dword [eax + 4], 0x127
call fcn.004154b0
mov eax, dword [0x49e418]
add eax, 0xeeaa2fb7
mov dword [0x49e418], eax
mov eax, dword [0x493ca4]
mov ecx, esp
mov dword [ecx], 0x16134
call eax
sub esp, 4
mov dx, word [0x4a5ea2]
mov ax, dx
imul eax, eax, 0xf695d6d5
mov dx, ax
mov word [0x4a5ea2], dx
mov eax, dword [0x493bf4]
mov ecx, esp
lea esi, [esp + 0x59a]
mov dword [ecx], esi
call eax
sub esp, 4
mov word [0x4a40c0], 0x2aec
mov dword [esp + 0x14], eax
mov eax, dword [0x49400c]
or eax, 0xf957a3b2
mov ecx, dword [0x498a20]
sub ecx, eax
mov dword [0x498a20], ecx
mov eax, esp
lea ecx, [esp + 0x59a]
mov dword [eax], ecx
mov dword [eax + 4], 0x13a
call fcn.004154b0
mov dx, word [0x4a682e]
mov ax, dx
imul eax, eax, 0xdeefb5fb
mov dx, ax
mov word [0x4a682e], dx
mov eax, dword [0x499b70]
imul eax, eax, 0x60927580
and eax, 0x5280
mov cx, word [0x4a69ea]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x4a69ea], cx
add esp, 0x6e8
pop esi
pop edi
pop ebx
ret