Function at 0x439130
Capabilities:
Write file on windows

Disassembly:
push ebx
push edi
push esi
sub esp, 0x7fc
mov eax, dword [esp + 0x80c]
mov ecx, 0xad572909
mov dword [esp + 0x7f8], eax
mov eax, dword [0x48c948]
dec eax
mov dword [0x48c948], eax
cmp ecx, eax
jl 0x43916e
mov eax, dword [0x48b010]
and eax, 0xa5811400
mov dword [0x48b010], eax
mov eax, dword [esp + 0x7f8]
mov ecx, eax
call fcn.00435a70
cmp eax, 0x8079
jbe 0x4398c3
mov ax, word [0x49a22e]
mov cx, ax
add ecx, 0x55fda64c
mov ax, cx
mov word [0x49a22e], ax
mov ecx, dword [0x48e92c]
imul ecx, ecx, 0x80b1ad04
mov dword [0x48e92c], ecx
mov ax, word [0x4972e0]
mov cx, ax
and ecx, 0xf5c3
mov ax, cx
mov word [0x4972e0], ax
mov ecx, dword [0x4925ac]
mov ax, word [0x49665e]
mov dx, ax
or edx, 0xfdfe
mov ax, dx
mov word [0x49665e], ax
mov edx, esp
lea esi, [esp + 0x657]
mov dword [edx], esi
mov dword [esp + 0x54], ecx
call fcn.0043a100
mov dword [esp + 0x650], eax
mov eax, dword [0x492894]
inc eax
mov dword [0x492894], eax
cmp eax, 0x85e18976
jle 0x439230
mov eax, dword [0x48bf9c]
xor eax, 0x9200380
mov ecx, dword [0x48d82c]
sub ecx, eax
mov dword [0x48d82c], ecx
mov eax, 0x68469dd3
mov dword [esp + 0x50], eax
call fcn.004360a0
movzx ecx, al
and ecx, 3
add ecx, 7
mov edx, dword [esp + 0x650]
lea edx, [esp + edx + 0x657]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], edx
call fcn.0043f810
mov ecx, dword [0x494530]
add ecx, 0xf8bdf84
mov dword [0x494530], ecx
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x30cd
call fcn.00447ef0
mov dword [esp + 0x7f4], eax
mov eax, dword [0x490c5c]
add eax, 0xc1e057d1
mov dword [0x490c5c], eax
mov eax, dword [esp + 0x7f4]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x657]
mov dword [ecx], eax
mov dword [esp + 0x4c], eax
call fcn.00455f50
mov ecx, dword [0x48f7f4]
add ecx, 0x281a168c
mov dword [0x48f7f4], ecx
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0x11c1
mov dword [esp + 0x48], eax
call fcn.00447ef0
mov dword [esp + 0x7f0], eax
mov eax, dword [0x491594]
add eax, 0x74dd0913
mov dword [0x491594], eax
mov eax, dword [esp + 0x7f4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.00437960
mov di, word [0x49acd8]
mov ax, di
inc eax
mov di, ax
mov word [0x49acd8], di
movsx eax, di
mov ecx, dword [0x4901a8]
and eax, ecx
mov ecx, dword [0x494664]
mov edx, ecx
inc edx
mov dword [0x494664], edx
or eax, ecx
mov dword [0x48df90], eax
mov eax, dword [esp + 0x7f0]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x4c]
mov dword [ecx], eax
call fcn.00456445
mov dword [esp + 0x7e8], eax
mov di, word [0x49a28e]
mov ax, di
xor eax, 0x9718
mov di, word [0x497c04]
mov cx, di
imul ecx, eax
mov di, cx
mov word [0x497c04], di
mov eax, dword [esp + 0x7f0]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00437960
mov eax, dword [0x49005c]
mov ecx, dword [esp + 0x50]
cmp ecx, eax
jg 0x4393e0
mov eax, dword [0x48f284]
mov cx, word [0x499ac6]
mov dx, cx
and eax, edx
or eax, 0x1e3b
mov cx, word [0x4966a0]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x4966a0], cx
cmp dword [esp + 0x7e8], 0
je 0x439864
mov eax, 0xca909747
mov ecx, dword [0x493c30]
mov edx, ecx
inc edx
mov dword [0x493c30], edx
cmp eax, ecx
jle 0x439414
mov dword [0x4943ac], 0x70e0040c
mov eax, 0xa1341801
mov cx, word [0x497986]
mov dx, cx
add edx, 0xd099eda7
mov cx, dx
mov word [0x497986], cx
mov edx, dword [esp + 0x7e8]
mov ecx, dword [esp + 0x7f8]
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], edx
call fcn.00435a70
mov ecx, dword [esp + 0x7f8]
mov dword [esp + 0x3c], eax
call fcn.00431410
mov ecx, esp
mov edx, dword [esp + 0x40]
mov dword [ecx + 0xc], edx
mov edx, dword [esp + 0x3c]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov dword [ecx + 8], 1
call fcn.004565f8
mov ecx, dword [0x48dea4]
inc ecx
mov dword [0x48dea4], ecx
and ecx, 0xc6e27740
mov edx, dword [esp + 0x44]
cmp edx, ecx
mov dword [esp + 0x38], eax
jge 0x4394da
mov eax, 0xfffdfffb
mov ecx, dword [0x4938fc]
xor ecx, 0xffffffff
xor ecx, 0x9a9ec468
cmp eax, ecx
jne 0x4394d5
mov eax, dword [0x48e2c4]
shl eax, 7
mov ecx, dword [0x494348]
lea eax, [eax + ecx + 0x6ecd8b5f]
mov dword [0x494348], eax
jmp 0x4394f2
mov ax, word [0x499b68]
mov cx, ax
imul ecx, ecx, 0x3bbec66a
mov ax, cx
mov word [0x499b68], ax
mov eax, dword [esp + 0x7e8]
mov ecx, esp
mov dword [ecx], eax
call fcn.004566e6
mov ecx, dword [0x492364]
and ecx, 0x74eafbf7
mov dword [0x492364], ecx
mov ecx, dword [esp + 0x7f8]
mov dword [esp + 0x34], eax
call fcn.00433e90
mov eax, dword [0x48dbe4]
xor eax, 0xe0c8262
mov dword [0x48dbe4], eax
mov byte [esp + 0x1d5], 0
mov eax, dword [0x48ce28]
shl eax, 2
and eax, 0x503a95ae
cmp eax, 0xb8532b40
jne 0x4395da
mov eax, dword [0x48f888]
add eax, 0x26d5a22
mov ecx, dword [0x4912fc]
sar ecx, 4
add ecx, 0x2caf709f
mov edx, dword [0x491f94]
sub ecx, edx
cmp eax, ecx
je 0x4395a7
mov ax, word [0x49a81a]
movsx ecx, ax
or ecx, 0x6ef9915d
or ecx, 0x658301ce
cmp ecx, 0x755a79bd
jl 0x4395a2
jmp 0x4395a2
jmp 0x4395d5
mov eax, dword [0x493e14]
mov ecx, eax
dec ecx
mov dword [0x493e14], ecx
add eax, 0xa9e3dad8
and eax, 0x3431
mov dx, word [0x49a5da]
mov cx, dx
add ecx, eax
mov dx, cx
mov word [0x49a5da], dx
jmp 0x4395da
mov eax, 0xa0c8a880
mov ecx, dword [0x48abe8]
mov edx, esp
lea esi, [esp + 0x58]
mov dword [edx + 4], esi
mov dword [edx + 8], 0x17d
mov dword [edx], 0
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], esi
call ecx
sub esp, 0xc
mov ecx, dword [0x492514]
or ecx, 0x73012a9d
mov dword [0x492514], ecx
mov byte [esp + 0x64f], 0
mov ecx, dword [0x48c4e8]
or ecx, 0x3f2614dc
mov dword [0x48c4e8], ecx
mov ecx, esp
mov dword [ecx + 4], 0x15
mov dword [ecx], 0x3742
mov dword [esp + 0x28], eax
call fcn.00447ef0
mov dword [esp + 0x7ec], eax
mov di, word [0x496426]
mov ax, di
inc eax
mov bx, ax
mov word [0x496426], bx
movsx eax, di
add eax, 0x443a6af7
xor eax, 0xe5d89432
mov dword [0x48f388], eax
mov eax, dword [0x49be5c]
mov ecx, dword [0x49be44]
mov edx, dword [esp + 0x7ec]
mov esi, esp
mov dword [esi + 0x10], eax
mov dword [esi + 0xc], ecx
mov eax, dword [esp + 0x2c]
mov dword [esi + 8], eax
mov dword [esi + 4], edx
lea ecx, [esp + 0x1d6]
mov dword [esi], ecx
call fcn.004561ce
mov ecx, dword [0x490ff0]
and ecx, 0x80048022
mov dword [0x490ff0], ecx
mov ecx, dword [esp + 0x7ec]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x15
mov dword [esp + 0x24], eax
call fcn.00437960
mov di, word [0x499506]
movsx eax, di
shl eax, 2
imul eax, eax, 0x89d17bb4
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jne 0x43973b
mov eax, 0x4de7251
mov ecx, dword [0x48d7c4]
dec ecx
mov dword [0x48d7c4], ecx
sub ecx, 0x7adfdf9c
add ecx, 0x2c789809
cmp eax, ecx
jg 0x439736
mov ax, word [0x4998b4]
mov cx, ax
add ecx, 0x8dcc5eb9
mov ax, cx
mov word [0x4998b4], ax
jmp 0x43973b
mov eax, dword [0x49be5c]
mov ecx, esp
mov dword [ecx], eax
call fcn.00446770
mov dx, word [0x49af66]
mov cx, dx
mov esi, ecx
dec esi
mov dx, si
mov word [0x49af66], dx
add ecx, 0x36aa529b
mov dx, word [0x498406]
mov si, dx
sub esi, ecx
mov dx, si
mov word [0x498406], dx
mov ecx, esp
lea esi, [esp + 0x1d6]
mov dword [ecx + 4], esi
lea edi, [esp + 0x657]
mov dword [ecx], edi
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], esi
call fcn.00439bd0
mov eax, dword [0x491468]
mov ecx, eax
inc ecx
mov dword [0x491468], ecx
and eax, 0xc66183e0
mov ecx, dword [0x492f3c]
add ecx, eax
mov dword [0x492f3c], ecx
mov eax, esp
mov ecx, dword [esp + 0x18]
mov dword [eax], ecx
mov dword [eax + 4], 0x47a
call fcn.0041c290
mov eax, dword [0x48e15c]
add eax, 0x20c3105c
mov ecx, dword [0x494258]
imul ecx, eax
mov dword [0x494258], ecx
mov eax, esp
lea ecx, [esp + 0x58]
mov dword [eax], ecx
mov dword [eax + 4], 0x17e
call fcn.0041c290
mov eax, dword [0x48fac8]
xor eax, 0x16c553f6
mov dword [0x48fac8], eax
mov eax, dword [0x48ac44]
mov ecx, esp
mov dword [ecx], 0x16049
call eax
sub esp, 4
mov eax, dword [0x48cdc0]
add eax, 0x1440807
mov dword [0x48cdc0], eax
mov eax, dword [0x48ab94]
mov ecx, esp
mov esi, dword [esp + 0x1c]
mov dword [ecx], esi
call eax
sub esp, 4
mov dx, word [0x49a1b4]
mov cx, dx
add ecx, 0xdeb7608c
mov dx, cx
mov word [0x49a1b4], dx
mov dword [esp + 0x14], eax
mov ax, word [0x498e1a]
mov cx, ax
mov edx, ecx
dec edx
mov ax, dx
mov word [0x498e1a], ax
mov edx, 0xb9025305
sub edx, ecx
mov ax, dx
mov word [0x49995a], ax
mov ecx, esp
lea edx, [esp + 0x657]
mov dword [ecx], edx
mov dword [ecx + 4], 0x191
call fcn.0041c290
mov ecx, dword [0x48c28c]
add ecx, 0xffa3f2df
mov edx, dword [0x495358]
xor ecx, edx
mov edx, dword [0x48b3b8]
imul edx, ecx
mov dword [0x48b3b8], edx
mov eax, dword [0x490abc]
xor eax, 0xfdbc28ad
mov dword [0x490abc], eax
add esp, 0x7fc
pop esi
pop edi
pop ebx
ret