Function at 0x4320d0
Capabilities:
Write file on windows

Disassembly:
push edi
push esi
sub esp, 0x30
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], ecx
mov dx, word [0x49ddfe]
movsx eax, dx
mov ecx, dword [0x49b534]
shl ecx, 8
and eax, ecx
cmp eax, 0x9fd66e7
je 0x43211d
mov eax, dword [0x49b470]
add eax, 0x7b1cea7a
mov ecx, dword [0x49a98c]
or ecx, eax
mov dword [0x49a98c], ecx
mov eax, dword [0x497d6c]
xor eax, 0xc1164a72
mov dword [0x497d6c], eax
cmp dword [0x4a1644], 0
jne 0x4321f0
mov eax, 0xbecda0f7
mov cx, word [0x49ed36]
mov dx, cx
dec edx
mov cx, dx
mov word [0x49ed36], cx
movsx edx, cx
mov esi, dword [0x496d80]
imul edx, esi
sub eax, edx
cmp eax, 0x6e184ead
jle 0x4321cd
mov ax, word [0x49fac8]
movsx ecx, ax
mov edx, dword [0x49b414]
mov esi, edx
inc esi
mov dword [0x49b414], esi
add edx, 0x6881aab6
and edx, 0xd3690245
cmp ecx, edx
jge 0x4321c8
mov eax, dword [0x49adc0]
dec eax
mov dword [0x49adc0], eax
imul eax, eax, 0x8e06874e
sub eax, 0xc2f071a7
cmp eax, 0xbf77efb7
jg 0x4321be
jmp 0x4321c3
jmp 0x4321c3
jmp 0x4321c8
jmp 0x4321cd
call fcn.00437a00
mov dword [0x4a1644], eax
mov cx, word [0x4a066e]
mov ax, cx
add eax, 0x2e792608
mov cx, ax
mov word [0x4a066e], cx
mov eax, 0xebfb6edc
mov ecx, dword [0x49b290]
add ecx, 0xc8267907
cmp eax, ecx
jne 0x432239
mov ax, word [0x49fcfa]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x49fcfa], ax
movsx ecx, ax
xor ecx, 0x73060141
or ecx, 0x8039faae
mov edx, dword [0x49a6d8]
and edx, ecx
mov dword [0x49a6d8], edx
mov eax, 0x56919de5
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0x3814
mov dword [esp + 0x18], eax
call fcn.0043b390
mov dword [esp + 0x24], eax
mov eax, dword [0x49c7bc]
mov ecx, eax
inc ecx
mov dword [0x49c7bc], ecx
imul eax, eax, 0xb7cf45c2
mov ecx, dword [esp + 0x18]
cmp ecx, eax
jne 0x4322af
mov ax, word [0x49ecca]
mov cx, ax
mov edx, ecx
dec edx
mov ax, dx
mov word [0x49ecca], ax
and ecx, 0x9030
mov ax, word [0x4a0566]
mov dx, ax
imul edx, ecx
mov ax, dx
mov word [0x4a0566], ax
jmp 0x4322d8
mov eax, dword [0x49a894]
sub eax, 0x5252bc34
cmp eax, 0x77706d40
jne 0x4322d3
mov eax, dword [0x499470]
or eax, 0x7a9b9201
mov dword [0x499470], eax
jmp 0x4322d8
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455edc
mov dword [esp + 0x1c], eax
mov eax, dword [0x49c574]
mov ecx, eax
dec ecx
mov dword [0x49c574], ecx
mov ecx, dword [0x4960b8]
and eax, ecx
and eax, 0x8498ced2
mov dword [0x4960b8], eax
mov eax, dword [esp + 0x24]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00403dd0
mov eax, dword [0x49bfd4]
not eax
add eax, 0x2dd65526
mov ecx, dword [0x49838c]
mov edx, ecx
inc edx
mov dword [0x49838c], edx
imul ecx, ecx, 0x6c5aa02
imul ecx, ecx, 0x4c4cdd12
cmp eax, ecx
jg 0x432372
mov ax, word [0x49db50]
movsx ecx, ax
not ecx
add ecx, 0x598dd043
mov edx, dword [0x497838]
and edx, ecx
mov dword [0x497838], edx
cmp dword [esp + 0x1c], 0
jne 0x43245b
mov eax, dword [0x49c2d8]
imul eax, eax, 0xaeff3def
mov dword [0x49c2d8], eax
mov eax, dword [0x495904]
mov ecx, esp
mov dword [ecx], 0x448
call eax
sub esp, 4
mov dx, word [0x49e282]
mov ax, dx
inc eax
mov dx, ax
mov word [0x49e282], dx
movsx eax, dx
or eax, 0x214000c8
mov dword [0x49a504], eax
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x3814
call fcn.0043b390
mov dword [esp + 0x20], eax
mov eax, dword [0x49c3e8]
dec eax
mov dword [0x49c3e8], eax
imul eax, eax, 0x5e3d30b8
mov ecx, dword [0x495f9c]
mov esi, ecx
inc esi
mov dword [0x495f9c], esi
sub eax, ecx
mov dx, word [0x49dce4]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x49dce4], dx
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], ecx
call fcn.00455edc
mov dword [esp + 0x1c], eax
mov eax, dword [0x497df8]
xor eax, 0x4dcf4972
mov dword [0x497df8], eax
mov eax, dword [esp + 0x20]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00403dd0
mov eax, dword [0x49a840]
add eax, 0xf4383057
mov dword [0x49a840], eax
mov eax, 0x6028a204
mov ecx, dword [0x49c744]
shl ecx, 3
sub ecx, 0xc0a6feaa
cmp eax, ecx
jl 0x4324d0
mov eax, dword [0x49ad28]
imul eax, eax, 0xbc91eac0
or eax, 0x3b8974da
mov ecx, dword [0x49a114]
xor ecx, 0xffffffff
xor ecx, 0x7735170
or ecx, 0x533cc43d
cmp eax, ecx
jle 0x4324cb
mov eax, 0xf5b7157d
mov ecx, dword [0x498ef4]
sub eax, ecx
and eax, 0xea8df228
cmp eax, 0xe4ace373
jl 0x4324c6
jmp 0x4324c6
jmp 0x4324cb
jmp 0x4324d0
cmp dword [esp + 0x1c], 0
je 0x4325a3
mov ax, word [0x49db60]
mov cx, ax
xor ecx, 0x5245
mov ax, cx
mov word [0x49db60], ax
mov ecx, dword [esp + 0x1c]
mov edx, esp
mov dword [edx + 0xc], ecx
mov dword [edx + 8], 1
mov dword [edx + 4], 4
mov dword [edx], 0x4a1644
call fcn.0045608f
mov si, word [0x49d27e]
movsx ecx, si
add ecx, 0x5e306312
mov si, word [0x4a0b1a]
mov dx, si
dec edx
mov di, dx
mov word [0x4a0b1a], di
movsx edx, si
add ecx, edx
cmp ecx, 0x232b8d7
mov dword [esp + 0x14], eax
jl 0x43255e
mov eax, dword [0x49c998]
xor eax, 0xa861c6dd
mov dword [0x49c998], eax
mov eax, dword [esp + 0x1c]
mov ecx, esp
mov dword [ecx], eax
call fcn.0045617d
mov dx, word [0x4a0c14]
mov cx, dx
mov esi, ecx
dec esi
mov dx, si
mov word [0x4a0c14], dx
mov esi, 0x3d57d6c8
sub esi, ecx
mov dx, word [0x49d644]
mov cx, dx
or ecx, esi
mov dx, cx
mov word [0x49d644], dx
mov dword [esp + 0x10], eax
mov ax, word [0x49ea4e]
movsx ecx, ax
imul ecx, ecx, 0xef372119
mov edx, dword [0x497c68]
or ecx, edx
or ecx, 0xc8080138
mov dword [0x497c68], ecx
add esp, 0x30
pop esi
pop edi
ret