Function at 0x4014d0
Capabilities:
Check mutex on windows
Check os version
Contain obfuscated stackstrings
Encode data using xor
Get common file path
Get disk information
Get file size
Hash data using fnv
Manipulate console buffer
Suspend thread

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x144c
call fcn.00410860
push esi
push edi
mov dword [ebp - 0xcc], 0x1e7
mov eax, 0x461
mov word [ebp - 0x258], ax
mov byte [ebp - 9], 0x1d
mov byte [ebp - 0x144], 1
mov byte [ebp - 0x1fc], 0x25
mov byte [ebp - 0x47], 0x1d
mov ecx, 0x1d9
mov word [ebp - 0xec], cx
mov byte [ebp - 0x140], 0x15
mov byte [ebp - 0x75], 0x11
mov byte [ebp - 0x48], 0xb
mov byte [ebp - 0x31], 0x11
mov byte [ebp - 0xe7], 0x23
mov edx, 0x1a3
mov word [ebp - 0x160], dx
mov byte [ebp - 0x193], 9
mov byte [ebp - 0xc], 0xd
mov byte [ebp - 0x113], 0x11
mov byte [ebp - 2], 0x1f
mov eax, 0x700000
mov dword [ebp - 0xd4], 0x778d
mov dword [ebp - 0xd0], eax
mov ecx, 0xb9
mov word [ebp - 0x108], cx
mov byte [ebp - 0x2a5], 7
mov byte [ebp - 0x13d], 0x11
mov edx, 0x700000
mov dword [ebp - 0x74], 0x1a47
mov dword [ebp - 0x70], edx
mov byte [ebp - 0x39], 7
mov byte [ebp - 0x46], 0x1d
mov byte [ebp - 0x17], 0xf
mov byte [ebp - 0x5b], 0xf
mov byte [ebp - 0x8b], 0x23
mov byte [ebp - 0x2b5], 0x17
mov byte [ebp - 0x5d], 0x21
mov eax, 0xad
mov word [ebp - 0x68], ax
mov byte [ebp - 0x5e], 0x13
mov byte [ebp - 0xf], 1
mov ecx, 0x1a1
mov word [ebp - 0x18c], cx
mov byte [ebp - 0x59], 0xb
mov byte [ebp - 0x45], 3
mov byte [ebp - 0x118], 5
mov byte [ebp - 0x35], 0xf
mov byte [ebp - 0x13f], 0x21
mov byte [ebp - 0x33], 0xf
mov byte [ebp - 0x29], 1
mov byte [ebp - 0x2b1], 0xf
mov byte [ebp - 0xe], 0x15
mov edx, 0x557
mov word [ebp - 0x55c], dx
mov byte [ebp - 0x21], 5
mov byte [ebp - 0xb7], 0xb
mov byte [ebp - 0x8d], 0x1d
mov byte [ebp - 0x3ae], 9
mov byte [ebp - 0x2b2], 0xf
mov byte [ebp - 0xc2], 0x11
mov byte [ebp - 0x8c], 0x13
mov eax, 0x700000
mov dword [ebp - 0x61c], 0x3cd7
mov dword [ebp - 0x618], eax
mov byte [ebp - 0x111], 1
mov byte [ebp - 0x51], 0x17
mov byte [ebp - 0x43], 3
mov byte [ebp - 0x3af], 0x25
mov byte [ebp - 0x200], 7
mov byte [ebp - 0xe2], 0xb
mov byte [ebp - 0x143], 1
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x5f0], eax
mov byte [ebp - 0x209], 3
mov byte [ebp - 0x7a], 0x17
mov byte [ebp - 0x16d], 1
mov byte [ebp - 1], 0x13
mov byte [ebp - 0x4b], 0x25
mov byte [ebp - 0x77], 1
mov byte [ebp - 0x11], 9
mov byte [ebp - 0x1bf], 9
mov byte [ebp - 0x49], 9
mov ecx, 0x693
mov word [ebp - 0x20], cx
mov byte [ebp - 0x1fd], 9
mov byte [ebp - 0x4e], 3
mov edx, 0x585
mov word [ebp - 0xc0], dx
mov byte [ebp - 0x2b3], 0x1b
mov byte [ebp - 0xe3], 0x25
mov byte [ebp - 0x4a], 0xb
mov byte [ebp - 0x2af], 0x1b
mov byte [ebp - 8], 0xb
mov eax, 0x700000
mov dword [ebp - 0x1ac], 0x2949
mov dword [ebp - 0x1a8], eax
mov byte [ebp - 0x7b], 0x1b
mov ecx, 0x321
mov word [ebp - 0x6c], cx
mov edx, 0x6ab
mov word [ebp - 0x17c], dx
mov dword [ebp - 0x4f0], 0x1eb
mov eax, 0x1f
mov word [ebp - 0x1e8], ax
mov byte [ebp - 0x2ae], 0x25
mov byte [ebp - 0x76], 0x1f
mov byte [ebp - 0x13e], 0x17
mov byte [ebp - 0x79], 0x11
mov byte [ebp - 0x3aa], 0x1b
mov byte [ebp - 0x22], 1
mov byte [ebp - 0x40e], 0x1d
mov byte [ebp - 0x32], 0x17
mov byte [ebp - 0x12], 0x17
mov byte [ebp - 0x115], 9
mov byte [ebp - 0x16e], 0x25
mov byte [ebp - 0x112], 0x21
mov byte [ebp - 0xe1], 0x13
mov byte [ebp - 0x1c0], 7
mov byte [ebp - 0x13], 5
mov byte [ebp - 0x5c], 0x25
mov byte [ebp - 0x3ac], 5
mov byte [ebp - 0x4c], 0xf
mov ecx, 0x700000
mov dword [ebp - 0x1cc], 0x45a7
mov dword [ebp - 0x1c8], ecx
mov byte [ebp - 0x1ff], 7
mov byte [ebp - 0x15], 0x23
mov edx, 0x15b
mov word [ebp - 0x4c0], dx
mov eax, 0xf9
mov word [ebp - 0x254], ax
mov byte [ebp - 0x16f], 0x1d
mov byte [ebp - 0xe6], 0x15
mov dword [ebp - 0x110], 0x47
mov byte [ebp - 0x194], 0x1d
mov byte [ebp - 0xd], 0x1b
mov byte [ebp - 0x4f], 0x23
mov byte [ebp - 0x1fa], 0x1b
mov ecx, 0x700000
mov dword [ebp - 0x424], 0x2bf9
mov dword [ebp - 0x420], ecx
mov byte [ebp - 0x1fb], 0x11
mov byte [ebp - 0x2b0], 0x13
mov byte [ebp - 4], 0x19
mov edx, 3
mov word [ebp - 0x560], dx
mov byte [ebp - 0x2ad], 0xf
mov byte [ebp - 0x226], 0x1d
mov byte [ebp - 0x2b6], 0x19
mov byte [ebp - 6], 0x23
mov byte [ebp - 0x8a], 0x13
mov byte [ebp - 0x18], 0x21
mov eax, dword [section..data]
add eax, 0xa07
mov ecx, dword [0x413004]
adc ecx, 0x700000
mov dword [section..data], eax
mov dword [0x413004], ecx
movsx edx, word [ebp - 0x20]
imul eax, edx, 0x183
mov word [ebp - 0x20], ax
mov ecx, 0x85
mov word [ebp - 0x28], cx
movzx edx, word [ebp - 0x28]
cmp edx, 0x95
jle 0x4018b2
movsx eax, word [ebp - 0x20]
sub eax, 0xa3
mov word [ebp - 0x20], ax
movsx ecx, word [ebp - 0x20]
shl ecx, 0xd
mov word [ebp - 0x20], cx
movsx edx, word [ebp - 0x20]
cmp edx, 0x379
jg 0x40190a
mov eax, dword [ebp - 0x74]
or eax, 0x417
mov ecx, dword [ebp - 0x70]
or ecx, 0x700000
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x130], edx
mov eax, dword [section..data]
mov ecx, dword [0x413004]
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], ecx
lea edx, [ebp - 0x74]
mov dword [ebp - 0x1d8], edx
mov eax, dword [ebp - 0xcc]
shr eax, 9
mov dword [ebp - 0xcc], eax
mov ecx, dword [ebp - 0x84]
xor ecx, 0x33c1
mov edx, dword [ebp - 0x80]
xor edx, 0x700000
mov dword [ebp - 0xa98], ecx
mov dword [ebp - 0xa94], edx
mov eax, dword [ebp - 0xa98]
cmp eax, dword [section..data]
jne 0x401947
mov ecx, dword [ebp - 0xa94]
cmp ecx, dword [0x413004]
je 0x401984
lea edx, [ebp - 0x84]
mov dword [ebp - 0x94], edx
mov byte [ebp - 3], 0x23
movsx eax, byte [ebp - 3]
and eax, 0xf
mov byte [ebp - 1], al
push 0
push 0x100
push 0
push 0
push 2
push 0x40000000
push str.RqKtmXVbR2BPzTtT3rWgE
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x44c], eax
movzx ecx, word [ebp - 0x28]
cmp ecx, 0x109
jle 0x4019ad
movsx edx, word [ebp - 0x20]
add edx, 0x1eb
mov eax, dword [ebp - 0x130]
mov word [eax], dx
movsx ecx, byte [ebp - 3]
sub ecx, 9
mov byte [ebp - 1], cl
lea edx, [ebp - 3]
mov dword [ebp - 0xd8], edx
mov dword [ebp - 0x584], 0x18e6
cmp dword [ebp - 0xcc], 0x8f
jae 0x401a0d
lea eax, [ebp - 0x20]
mov dword [ebp - 0x1a0], eax
lea ecx, [ebp - 1]
mov dword [ebp - 0x128], ecx
lea edx, [ebp - 3]
mov dword [ebp - 0x9c], edx
lea eax, [ebp - 1]
mov dword [ebp - 0x98], eax
mov ecx, dword [ebp - 0x98]
movsx eax, byte [ecx]
mov edx, dword [ebp - 0x128]
movsx ecx, byte [edx]
cdq
idiv ecx
mov edx, dword [ebp - 0x9c]
mov byte [edx], al
mov dword [ebp - 0x588], 0x23a8
movsx eax, word [ebp - 0x20]
mov ecx, dword [ebp - 0x1a0]
movsx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x130]
movsx edx, word [ecx]
cmp eax, edx
je 0x4106c4
mov eax, dword [ebp - 0x98]
movsx eax, byte [eax]
movsx ecx, byte [ebp - 1]
cdq
idiv ecx
mov byte [ebp - 2], al
lea edx, [ebp - 3]
mov dword [ebp - 0x180], edx
movzx eax, word [ebp - 0x28]
cmp eax, 0xd
jle 0x4106a0
mov ecx, dword [ebp - 0x94]
mov edx, dword [ecx]
add edx, dword [ebp - 0x84]
mov eax, dword [ecx + 4]
adc eax, dword [ebp - 0x80]
mov dword [ebp - 0xaa0], edx
mov dword [ebp - 0xa9c], eax
mov ecx, dword [ebp - 0xaa0]
cmp ecx, dword [section..data]
jne 0x401a9c
mov edx, dword [ebp - 0xa9c]
cmp edx, dword [0x413004]
je 0x401ad6
lea eax, [ebp - 3]
mov dword [ebp - 0x100], eax
lea ecx, [ebp - 2]
mov dword [ebp - 0xb0], ecx
mov edx, dword [ebp - 0xd8]
mov al, byte [edx]
mov byte [ebp - 7], al
mov dword [ebp - 0x58c], 0xb6f3
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x1bc], ecx
mov dword [ebp - 0x5a8], 0x7a5a
movzx edx, word [ebp - 0x28]
cmp edx, 0xd3
jle 0x401b15
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x98]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0xb0]
mov byte [edx], cl
mov eax, dword [ebp - 0x100]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 3]
sub ecx, edx
mov eax, dword [ebp - 0x100]
mov byte [eax], cl
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
mov eax, dword [ebp - 0xd8]
movsx eax, byte [eax]
imul ecx, eax
cmp edx, ecx
jg 0x401b6b
mov ecx, dword [ebp - 0xd8]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 1]
add edx, eax
mov byte [ebp - 2], dl
mov ecx, dword [ebp - 0xd8]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 7]
sub edx, eax
mov ecx, dword [ebp - 0x98]
mov byte [ecx], dl
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 1]
cdq
idiv ecx
mov edx, dword [ebp - 0xd8]
mov byte [edx], al
mov eax, dword [ebp - 0xcc]
add eax, 0x1db
cmp eax, dword [ebp - 0x124]
jb 0x410677
movsx ecx, byte [ebp - 2]
movsx edx, byte [ebp - 1]
sub ecx, edx
movsx eax, byte [ebp - 7]
movsx edx, byte [ebp - 3]
add eax, edx
cmp ecx, eax
jne 0x401bd6
mov eax, dword [ebp - 0x74]
add eax, 0x1db3
mov ecx, dword [ebp - 0x70]
adc ecx, 0x700000
mov edx, dword [ebp - 0x1d8]
mov dword [edx], eax
mov dword [edx + 4], ecx
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 7]
sub eax, ecx
mov byte [ebp - 1], al
mov edx, dword [ebp - 0x130]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x20]
add eax, ecx
mov edx, dword [ebp - 0x1bc]
movsx ecx, word [edx]
mov edx, dword [ebp - 0x1a0]
movsx edx, word [edx]
add ecx, edx
cmp eax, ecx
jl 0x401c5c
mov eax, dword [ebp - 0xcc]
add eax, 0x269
cmp eax, dword [ebp - 0x124]
jb 0x401c5c
mov dword [0x413020], 0x22dd
lea ecx, [ebp - 3]
mov dword [ebp - 0xf8], ecx
push str.M749XP_ZfuaYr_URUFh_DW
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x30c], ax
mov dword [ebp - 0x5b0], 0x7212
mov edx, dword [ebp - 0x98]
movsx eax, byte [edx]
cdq
mov ecx, 3
idiv ecx
mov byte [ebp - 0x13], al
lea edx, [ebp - 0x20]
mov dword [ebp - 0x19c], edx
movzx eax, word [ebp - 0x28]
cmp eax, 0x99
jg 0x401cef
movsx ecx, word [ebp - 0x20]
mov edx, dword [ebp - 0x1bc]
movsx eax, word [edx]
sub ecx, eax
mov edx, dword [ebp - 0x130]
movsx eax, word [edx]
mov edx, dword [ebp - 0x19c]
movsx edx, word [edx]
add eax, edx
cmp ecx, eax
je 0x401cd3
mov eax, dword [ebp - 0x128]
mov cl, byte [eax]
mov byte [ebp - 5], cl
movsx edx, byte [ebp - 1]
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 5], dl
movsx edx, byte [ebp - 5]
mov eax, dword [ebp - 0xd8]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 4], dl
lea ecx, [ebp - 1]
mov dword [ebp - 0x1b0], ecx
lea edx, [ebp - 4]
mov dword [ebp - 0xdc], edx
mov dword [ebp - 0x59c], 0x1643
movsx eax, byte [ebp - 4]
mov ecx, dword [ebp - 0xd8]
movsx edx, byte [ecx]
xor eax, edx
mov byte [ebp - 9], al
mov eax, dword [ebp - 0x128]
mov cl, byte [eax]
mov byte [ebp - 4], cl
mov dword [ebp - 0x5a0], 0x4b36
cmp dword [0x413020], 0x837
jge 0x401d48
mov edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x9c]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x98]
mov byte [ecx], al
mov edx, dword [ebp - 0x9c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xf8]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x100]
mov byte [ecx], al
mov edx, dword [ebp - 0xcc]
sub edx, 0x83
cmp edx, dword [ebp - 0x124]
jae 0x401d86
mov eax, dword [ebp - 0x128]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 7], cl
lea ecx, [ebp - 0x1040]
push ecx
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameW]
mov dword [ebp - 0x74c], eax
lea edx, [ebp - 3]
mov dword [ebp - 0xb4], edx
movzx eax, word [ebp - 0x28]
cmp eax, 0x1c3
jl 0x401dc3
mov ecx, dword [ebp - 0x1b0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 2]
add edx, eax
mov ecx, dword [ebp - 0xdc]
mov byte [ecx], dl
movsx edx, byte [ebp - 1]
movsx eax, byte [ebp - 5]
add edx, eax
mov ecx, dword [ebp - 0x98]
mov byte [ecx], dl
cmp dword [0x413020], 0x4b31
je 0x401e1d
movzx edx, word [ebp - 0x28]
sub edx, 0x91
mov word [0x413008], dx
mov ax, word [ebp - 0x28]
mov word [ebp - 0x40], ax
lea ecx, [ebp - 0x124]
mov dword [ebp - 0xc8], ecx
mov edx, dword [ebp - 0x94]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
mov edx, dword [ebp - 0x80]
push edx
mov eax, dword [ebp - 0x84]
push eax
call fcn.004107b0
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], edx
mov ecx, dword [ebp - 0x130]
mov dx, word [ecx]
mov word [ebp - 0x30], dx
lea eax, [ebp - 4]
mov dword [ebp - 0x104], eax
mov ecx, dword [ebp - 0x1d8]
mov edx, dword [ecx]
or edx, 0x7483
mov eax, dword [ecx + 4]
or eax, 0x700000
mov dword [ebp - 0xaa8], edx
mov dword [ebp - 0xaa4], eax
mov ecx, dword [ebp - 0xaa4]
cmp ecx, dword [ebp - 0x70]
jb 0x41064e
ja 0x401e75
mov edx, dword [ebp - 0xaa8]
cmp edx, dword [ebp - 0x74]
jb 0x41064e
mov eax, dword [ebp - 0xb0]
mov cl, byte [eax]
mov byte [0x413024], cl
movsx edx, byte [ebp - 7]
mov eax, dword [ebp - 0x98]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 6], dl
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 5]
add eax, ecx
mov edx, dword [ebp - 0x9c]
mov byte [edx], al
movsx eax, byte [0x413024]
movsx ecx, byte [ebp - 6]
add eax, ecx
mov edx, dword [ebp - 0x1b0]
mov byte [edx], al
mov eax, dword [ebp - 0x130]
movsx ecx, word [eax]
movsx edx, word [ebp - 0x20]
add ecx, edx
mov eax, dword [ebp - 0x19c]
mov word [eax], cx
mov ecx, dword [ebp - 0x104]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x13]
sub edx, eax
mov ecx, dword [ebp - 0xdc]
mov byte [ecx], dl
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xb0]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 4], al
mov eax, dword [ebp - 0x98]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x13]
add ecx, edx
mov byte [ebp - 3], cl
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [eax]
sub ecx, 0x692d
mov edx, dword [eax + 4]
sbb edx, 0x700000
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], edx
movsx eax, byte [ebp - 4]
movsx ecx, byte [ebp - 9]
add eax, ecx
mov byte [0x413024], al
movsx edx, byte [ebp - 0x13]
movsx eax, byte [ebp - 4]
add edx, eax
mov ecx, dword [ebp - 0x180]
mov byte [ecx], dl
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 2]
add eax, ecx
mov byte [ebp - 6], al
mov edx, dword [ebp - 0xdc]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xf8]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 9], al
movsx eax, byte [ebp - 3]
mov ecx, dword [ebp - 0x100]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x13], al
movsx eax, byte [ebp - 0x13]
movsx ecx, byte [ebp - 2]
add eax, ecx
mov edx, dword [ebp - 0xd8]
mov byte [edx], al
movsx eax, byte [ebp - 7]
mov ecx, dword [ebp - 0x9c]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0xb0]
mov byte [ecx], al
mov edx, dword [ebp - 0x128]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x100]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0xd8]
mov byte [ecx], al
movsx edx, word [ebp - 0x30]
movsx eax, word [ebp - 0x20]
add edx, eax
mov ecx, dword [ebp - 0x19c]
mov word [ecx], dx
movsx edx, byte [ebp - 5]
movsx eax, byte [ebp - 9]
add edx, eax
mov byte [ebp - 1], dl
mov ecx, dword [ebp - 0x584]
sub ecx, 7
mov dword [ebp - 0x584], ecx
movsx edx, byte [ebp - 6]
mov eax, dword [ebp - 0xf8]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x1b0]
mov byte [eax], dl
mov ecx, dword [ebp - 0x1b0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 5]
and edx, eax
mov byte [0x413024], dl
call dword [sym.imp.KERNEL32.dll_CreateTimerQueue]
mov dword [ebp - 0x6cc], eax
movsx ecx, byte [ebp - 4]
movsx edx, byte [ebp - 5]
xor ecx, edx
mov eax, dword [ebp - 0x100]
mov byte [eax], cl
mov ecx, dword [ebp - 0x104]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 2]
sar edx, cl
mov eax, dword [ebp - 0x128]
mov byte [eax], dl
movsx ecx, byte [ebp - 4]
movsx edx, byte [ebp - 3]
or ecx, edx
mov byte [ebp - 6], cl
movsx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0xf8]
movsx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x98]
mov byte [edx], al
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x104]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 5], cl
movsx ecx, byte [ebp - 6]
movsx edx, byte [ebp - 9]
sub ecx, edx
mov byte [ebp - 7], cl
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 3]
sub ecx, edx
mov byte [ebp - 5], cl
movsx eax, byte [ebp - 5]
movsx ecx, byte [ebp - 1]
add eax, ecx
mov edx, dword [ebp - 0xdc]
mov byte [edx], al
mov eax, dword [ebp - 0x1bc]
movsx ecx, word [eax]
movsx edx, word [ebp - 0x30]
sub ecx, edx
mov word [ebp - 0x20], cx
movsx eax, byte [ebp - 6]
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x13], al
movsx eax, byte [ebp - 4]
movsx ecx, byte [ebp - 0x13]
add eax, ecx
mov byte [ebp - 9], al
movsx edx, byte [ebp - 0x13]
movsx eax, byte [ebp - 1]
add edx, eax
mov ecx, dword [ebp - 0xb4]
mov byte [ecx], dl
movsx edx, byte [ebp - 4]
mov eax, dword [ebp - 0x128]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 6], dl
cmp dword [ebp - 0x584], 0x1796
ja 0x401e95
mov edx, dword [ebp - 0xd0]
push edx
mov eax, dword [ebp - 0xd4]
push eax
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x84]
push edx
call fcn.00410700
mov ecx, dword [ebp - 0x94]
mov esi, dword [ecx]
sub esi, dword [section..data]
mov ecx, dword [ecx + 4]
sbb ecx, dword [0x413004]
mov dword [ebp - 0xab0], eax
mov dword [ebp - 0xaac], edx
mov dword [ebp - 0xab8], esi
mov dword [ebp - 0xab4], ecx
mov edx, dword [ebp - 0xab0]
cmp edx, dword [ebp - 0xab8]
jne 0x4021a2
mov eax, dword [ebp - 0xaac]
cmp eax, dword [ebp - 0xab4]
je 0x4021cb
movsx ecx, byte [ebp - 5]
mov edx, dword [ebp - 0x98]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x13], cl
movsx ecx, byte [ebp - 2]
mov edx, dword [ebp - 0x9c]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x98]
mov byte [edx], cl
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 5]
imul ecx, edx
mov byte [ebp - 8], cl
mov dword [ebp - 0x590], 0x5e79
mov eax, dword [ebp - 0x94]
mov esi, dword [eax]
sub esi, dword [ebp - 0x84]
mov edi, dword [eax + 4]
sbb edi, dword [ebp - 0x80]
mov ecx, dword [0x413004]
push ecx
mov edx, dword [section..data]
push edx
mov eax, dword [ebp - 0xd0]
push eax
mov ecx, dword [ebp - 0xd4]
push ecx
call fcn.00410700
mov dword [ebp - 0xac0], esi
mov dword [ebp - 0xabc], edi
mov dword [ebp - 0xac8], eax
mov dword [ebp - 0xac4], edx
mov edx, dword [ebp - 0xabc]
cmp edx, dword [ebp - 0xac4]
jl 0x402277
jg 0x402253
mov eax, dword [ebp - 0xac0]
cmp eax, dword [ebp - 0xac8]
jbe 0x402277
movsx ecx, byte [ebp - 2]
mov edx, dword [ebp - 0x104]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0xb0]
mov byte [edx], cl
movsx eax, byte [ebp - 8]
movsx ecx, byte [ebp - 7]
shl eax, cl
mov byte [ebp - 9], al
mov ecx, dword [ebp - 0xb0]
mov dl, byte [ecx]
mov byte [ebp - 0xb], dl
movzx eax, word [ebp - 0x40]
movzx ecx, word [ebp - 0x28]
or eax, ecx
movzx edx, word [0x413008]
cmp eax, edx
jge 0x4022dd
movsx eax, byte [ebp - 3]
mov ecx, dword [ebp - 0xb0]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0xf8]
mov byte [ecx], al
lea edx, [ebp - 0x13]
mov dword [ebp - 0x11c], edx
movzx eax, byte [ebp - 0xd]
imul ecx, eax, 0x25
mov byte [ebp - 0xd], cl
lea edx, [ebp - 0x40]
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x594], 0x6954
lea eax, [ebp - 0x124]
mov dword [ebp - 0x64], eax
cmp dword [0x413020], 0x2e3f
jle 0x402325
mov ecx, dword [ebp - 0x104]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x180]
mov byte [eax], dl
mov ecx, dword [ebp - 0xd4]
add ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0xd0]
adc edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x11c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 3]
imul edx, eax
movsx ecx, byte [ebp - 0x13]
mov eax, dword [ebp - 0x9c]
movsx eax, byte [eax]
sub ecx, eax
cmp edx, ecx
jle 0x40237c
mov ecx, dword [ebp - 0x1d8]
mov edx, dword [ecx]
add edx, 0x4b43
mov eax, dword [ecx + 4]
adc eax, 0x700000
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], eax
movsx ecx, word [ebp - 0x20]
mov edx, dword [ebp - 0x1bc]
movsx eax, word [edx]
add ecx, eax
mov edx, dword [ebp - 0x1a0]
mov word [edx], cx
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x6a8], eax
mov dword [ebp - 0x598], 0x61dd
lea eax, [ebp - 5]
mov dword [ebp - 0x13c], eax
cmp dword [ebp - 0x588], 0x400c
je 0x402531
movsx ecx, byte [ebp - 0x13]
movsx edx, byte [ebp - 0xb]
add ecx, edx
mov eax, dword [ebp - 0xf8]
mov byte [eax], cl
movsx ecx, byte [ebp - 4]
movsx edx, byte [ebp - 0xb]
sub ecx, edx
mov eax, dword [ebp - 0x104]
mov byte [eax], cl
movsx ecx, byte [ebp - 7]
movsx edx, byte [ebp - 4]
add ecx, edx
mov byte [ebp - 0xb], cl
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 6]
xor ecx, edx
mov byte [ebp - 0x13], cl
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ebp - 0x94]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.00410810
mov dword [section..data], eax
mov dword [0x413004], edx
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xdc]
movsx eax, byte [edx]
and ecx, eax
mov edx, dword [ebp - 0x11c]
mov byte [edx], cl
movsx eax, byte [ebp - 7]
mov ecx, dword [ebp - 0x13c]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x13], al
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x128]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x98]
mov byte [edx], cl
movsx eax, byte [ebp - 3]
movsx ecx, byte [ebp - 9]
sub eax, ecx
mov byte [ebp - 0xb], al
mov edx, dword [ebp - 0xf8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x98]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0xf8]
mov byte [ecx], al
mov edx, dword [ebp - 0x588]
add edx, 0x5c
mov dword [ebp - 0x588], edx
movsx eax, byte [ebp - 2]
mov ecx, dword [ebp - 0xd8]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x100]
mov byte [ecx], al
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xdc]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x128]
mov byte [ecx], al
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x11c]
mov byte [ecx], al
mov edx, dword [ebp - 0xf8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 5]
shl eax, cl
mov byte [0x413024], al
mov ecx, dword [ebp - 0x1b0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x100]
movsx ecx, byte [eax]
or edx, ecx
mov eax, dword [ebp - 0xdc]
mov byte [eax], dl
mov ecx, dword [ebp - 0x13c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x128]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0xdc]
mov byte [eax], dl
jmp 0x40239b
movzx ecx, word [ebp - 0x40]
mov edx, dword [ebp - 0x88]
movzx eax, word [edx]
add ecx, eax
movzx edx, word [ebp - 0x28]
movzx eax, word [0x413008]
imul edx, eax
cmp ecx, edx
jg 0x4025c5
lea ecx, [ebp - 2]
mov dword [ebp - 0x208], ecx
mov dword [ebp - 0x5ac], 0x1ed5
lea edx, [ebp - 0x20]
mov dword [ebp - 0x1e0], edx
movzx eax, word [ebp - 0x40]
movzx ecx, word [ebp - 0x28]
add eax, ecx
mov edx, dword [ebp - 0x88]
movzx ecx, word [edx]
movzx edx, word [0x413008]
add ecx, edx
cmp eax, ecx
je 0x4025c5
mov eax, dword [ebp - 0x208]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 3]
add ecx, edx
mov byte [ebp - 1], cl
lea eax, [ebp - 2]
mov dword [ebp - 0x120], eax
lea ecx, [ebp - 1]
mov dword [ebp - 0x244], ecx
lea edx, [ebp - 3]
mov dword [ebp - 0x188], edx
mov dword [0x413028], 0x413020
mov eax, dword [0x413028]
mov eax, dword [eax]
cdq
mov ecx, 0x477
idiv ecx
cmp eax, dword [0x413020]
jl 0x402601
lea edx, [ebp - 0x1150]
push edx
call dword [sym.imp.COMDLG32.dll_PageSetupDlgW]
mov dword [ebp - 0xecc], eax
movsx eax, byte [ebp - 8]
mov ecx, dword [ebp - 0x98]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 2], al
mov eax, dword [ebp - 0x9c]
mov cl, byte [eax]
mov byte [ebp - 0x10], cl
movzx edx, byte [ebp - 0xd]
cmp edx, 5
jl 0x40269b
movsx eax, byte [ebp - 5]
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 7], al
movzx eax, word [ebp - 0x40]
mov ecx, dword [ebp - 0x88]
movzx edx, word [ecx]
imul eax, edx
movzx ecx, word [ebp - 0x28]
movzx edx, word [0x413008]
add ecx, edx
cmp eax, ecx
jge 0x40269b
lea eax, [ebp - 0x74]
mov dword [ebp - 0x1a4], eax
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x154], ecx
movsx edx, byte [ebp - 6]
mov eax, dword [ebp - 0x98]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x15], dl
mov edx, dword [ebp - 0x13c]
mov al, byte [edx]
mov byte [ebp - 0xa], al
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x29c], ecx
mov edx, dword [ebp - 0x208]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 8]
add eax, ecx
mov edx, dword [ebp - 0xb4]
mov byte [edx], al
mov dword [ebp - 0x5a4], 0x5ee4
movsx eax, byte [0x413024]
mov ecx, dword [ebp - 0x208]
movsx ecx, byte [ecx]
cdq
idiv ecx
mov byte [ebp - 0xc], al
mov edx, dword [ebp - 0x94]
mov eax, dword [ebp - 0xd0]
push eax
mov ecx, dword [ebp - 0xd4]
push ecx
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
call fcn.004107b0
mov ecx, dword [ebp - 0x84]
add ecx, dword [section..data]
mov esi, dword [ebp - 0x80]
adc esi, dword [0x413004]
mov dword [ebp - 0xad0], eax
mov dword [ebp - 0xacc], edx
mov dword [ebp - 0xad8], ecx
mov dword [ebp - 0xad4], esi
mov edx, dword [ebp - 0xacc]
cmp edx, dword [ebp - 0xad4]
jg 0x402759
jl 0x402726
mov eax, dword [ebp - 0xad0]
cmp eax, dword [ebp - 0xad8]
jae 0x402759
mov ecx, dword [ebp - 0x9c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 3]
add edx, eax
mov ecx, dword [ebp - 0xdc]
mov byte [ecx], dl
mov edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x104]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0xb4]
mov byte [ecx], al
mov edx, dword [ebp - 0x19c]
movsx eax, word [edx]
mov ecx, dword [ebp - 0x1bc]
movsx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x130]
movsx edx, word [ecx]
mov ecx, dword [ebp - 0x29c]
movsx ecx, word [ecx]
add edx, ecx
cmp eax, edx
jg 0x4027a4
movsx edx, byte [ebp - 0xa]
movsx eax, byte [ebp - 1]
sub edx, eax
mov byte [ebp - 0x10], dl
movsx ecx, byte [ebp - 4]
movsx edx, byte [ebp - 5]
add ecx, edx
mov eax, dword [ebp - 0x1b0]
mov byte [eax], cl
cmp dword [ebp - 0x58c], 0x759b
jbe 0x402aa1
mov ecx, dword [ebp - 0x154]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xf8]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x10], dl
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 7]
add eax, ecx
mov edx, dword [ebp - 0xf8]
mov byte [edx], al
mov eax, dword [0x413020]
add eax, 0x591f
mov ecx, dword [0x413028]
mov dword [ecx], eax
mov edx, dword [ebp - 0x98]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xdc]
movsx edx, byte [ecx]
xor eax, edx
mov ecx, dword [ebp - 0xd8]
mov byte [ecx], al
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
and eax, edx
mov ecx, dword [ebp - 0x100]
mov byte [ecx], al
mov edx, dword [ebp - 0x9c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x98]
movsx ecx, byte [ecx]
sar eax, cl
mov edx, dword [ebp - 0xf8]
mov byte [edx], al
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x94]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.004107f0
mov ecx, dword [ebp - 0x94]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0xc8]
mov eax, dword [edx]
or eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0x64]
mov dword [ecx], eax
mov edx, dword [ebp - 0x88]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x40]
sub eax, ecx
mov edx, dword [ebp - 0x88]
mov word [edx], ax
mov eax, dword [ebp - 0x88]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x28]
sub ecx, edx
mov eax, dword [ebp - 0x88]
mov word [eax], cx
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x124]
sub edx, dword [ecx]
mov dword [ebp - 0xcc], edx
movzx eax, word [ebp - 0x30c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x54c], ax
mov ecx, dword [0x413020]
add ecx, 0x6d9f
mov edx, dword [0x413028]
mov dword [edx], ecx
mov eax, dword [ebp - 0x100]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x128]
mov byte [edx], cl
movsx eax, byte [ebp - 4]
movsx ecx, byte [ebp - 0x10]
add eax, ecx
mov edx, dword [ebp - 0x13c]
mov byte [edx], al
mov eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x98]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x128]
mov byte [edx], cl
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x15]
add ecx, edx
mov eax, dword [ebp - 0x9c]
mov byte [eax], cl
mov ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0xdc]
mov byte [eax], dl
movsx ecx, byte [ebp - 0xb]
movsx edx, byte [ebp - 5]
sub ecx, edx
mov eax, dword [ebp - 0x154]
mov byte [eax], cl
movsx ecx, word [ebp - 0x30]
mov edx, dword [ebp - 0x29c]
movsx eax, word [edx]
add ecx, eax
mov word [ebp - 0x20], cx
mov ecx, dword [ebp - 0xb0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 5]
add edx, eax
mov ecx, dword [ebp - 0x104]
mov byte [ecx], dl
movsx edx, byte [ebp - 0xa]
movsx eax, byte [ebp - 0x15]
sub edx, eax
mov byte [0x413024], dl
mov ecx, dword [ebp - 0x9c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x120]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x1b0]
mov byte [eax], dl
mov ecx, dword [ebp - 0x1d8]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x1a4]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.004107f0
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 4]
or ecx, edx
mov eax, dword [ebp - 0x154]
mov byte [eax], cl
mov ecx, dword [ebp - 0x58c]
sub ecx, 0xcc
mov dword [ebp - 0x58c], ecx
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 9]
sub eax, ecx
mov edx, dword [ebp - 0xdc]
mov byte [edx], al
movsx eax, byte [ebp - 6]
mov ecx, dword [ebp - 0xdc]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x120]
mov byte [ecx], al
movsx edx, byte [ebp - 0x15]
mov eax, dword [ebp - 0x104]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x1b0]
mov byte [eax], dl
mov ecx, dword [ebp - 0x100]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xf8]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 1], dl
mov edx, dword [ebp - 0x154]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xb0]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0xb4]
mov byte [ecx], al
movsx edx, byte [ebp - 0xa]
mov eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 7], dl
jmp 0x4027a4
movsx edx, word [ebp - 0x20]
movsx eax, word [ebp - 0x30]
add edx, eax
mov ecx, dword [ebp - 0x1a0]
movsx eax, word [ecx]
mov ecx, dword [ebp - 0x29c]
movsx ecx, word [ecx]
sub eax, ecx
cmp edx, eax
jl 0x402aeb
movsx edx, byte [ebp - 5]
mov eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x104]
mov byte [eax], dl
mov ecx, dword [0x413028]
mov edx, dword [ecx]
sar edx, 0x19
mov dword [0x413020], edx
mov eax, dword [0x413020]
xor eax, 0x5fff
mov ecx, dword [0x413028]
cmp eax, dword [ecx]
jge 0x41061b
movzx edx, word [ebp - 0x40]
mov eax, dword [ebp - 0x88]
movzx ecx, word [eax]
imul edx, ecx
movzx eax, word [ebp - 0x28]
movzx ecx, word [0x413008]
imul eax, ecx
cmp edx, eax
jl 0x402b44
movsx edx, byte [ebp - 2]
movsx eax, byte [ebp - 5]
add edx, eax
mov byte [ebp - 0x15], dl
movsx ecx, byte [ebp - 0xa]
movsx edx, byte [ebp - 0xc]
sub ecx, edx
mov eax, dword [ebp - 0x128]
mov byte [eax], cl
lea ecx, [ebp - 0x15]
mov dword [ebp - 0x158], ecx
mov edx, dword [ebp - 0x1e0]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x20]
add eax, ecx
movsx edx, word [ebp - 0x30]
mov ecx, dword [ebp - 0x1bc]
movsx ecx, word [ecx]
add edx, ecx
cmp eax, edx
jle 0x402b93
movsx edx, byte [ebp - 7]
mov eax, dword [ebp - 0x100]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 6], dl
movsx edx, byte [ebp - 3]
movsx eax, byte [ebp - 4]
sub edx, eax
mov ecx, dword [ebp - 0x13c]
mov byte [ecx], dl
movsx edx, byte [ebp - 8]
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
imul edx, ecx
movsx eax, byte [ebp - 0xc]
mov ecx, dword [ebp - 0x104]
movsx ecx, byte [ecx]
or eax, ecx
cmp edx, eax
jne 0x402bed
lea edx, [ebp - 0x94]
push edx
mov eax, dword [ebp - 0xcc8]
push eax
push 0x3c
push 0x77
mov ecx, dword [ebp - 0x748]
push ecx
call dword [sym.imp.KERNEL32.dll_FillConsoleOutputCharacterW]
mov dword [ebp - 0x6bc], eax
movsx edx, byte [ebp - 6]
mov eax, dword [ebp - 0x98]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 2], dl
lea ecx, [ebp - 8]
mov dword [ebp - 0x1dc], ecx
mov edx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x74]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x70]
sbb ecx, dword [edx + 4]
mov edx, dword [ebp - 0x1d8]
mov dword [ebp - 0xae0], eax
mov dword [ebp - 0xadc], ecx
mov dword [ebp - 0x620], edx
mov eax, dword [ebp - 0x620]
mov ecx, dword [ebp - 0xae0]
cmp ecx, dword [eax]
jne 0x402c40
mov edx, dword [ebp - 0x620]
mov eax, dword [ebp - 0xadc]
cmp eax, dword [edx + 4]
je 0x402c69
mov ecx, dword [ebp - 0x120]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 8]
add edx, eax
mov ecx, dword [ebp - 0x9c]
mov byte [ecx], dl
movsx edx, byte [ebp - 6]
movsx eax, byte [ebp - 0x10]
add edx, eax
mov ecx, dword [ebp - 0x154]
mov byte [ecx], dl
lea edx, [ebp - 0x20]
mov dword [ebp - 0x27c], edx
mov eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x11c]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0xe], cl
movzx ecx, byte [ebp - 0xd]
cmp ecx, 0x11
jl 0x4105f7
mov edx, dword [ebp - 0x27c]
movsx eax, word [edx]
mov ecx, dword [ebp - 0x29c]
movsx edx, word [ecx]
add eax, edx
mov word [0x41300c], ax
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 5]
add ecx, edx
mov eax, dword [ebp - 0x11c]
mov byte [eax], cl
lea ecx, [ebp - 7]
mov dword [ebp - 0x15c], ecx
mov edx, dword [ebp - 0xdc]
mov al, byte [edx]
mov byte [ebp - 0x1a], al
lea ecx, [ebp - 0xc]
mov dword [ebp - 0x168], ecx
movsx edx, byte [ebp - 4]
movsx eax, byte [ebp - 0xc]
sub edx, eax
mov byte [ebp - 0x17], dl
mov ecx, dword [ebp - 0xd8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x100]
mov byte [eax], dl
lea ecx, [ebp - 3]
mov dword [ebp - 0x1b8], ecx
mov edx, dword [ebp - 0x98]
mov al, byte [edx]
mov byte [ebp - 0x16], al
call dword [sym.imp.KERNEL32.dll_AreFileApisANSI]
mov dword [ebp - 0xccc], eax
mov ecx, dword [ebp - 0x154]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 2]
add edx, eax
mov byte [ebp - 0xf], dl
lea ecx, [ebp - 0x28]
mov dword [ebp - 0xe0], ecx
movzx edx, byte [ebp - 0xd]
add edx, 7
mov byte [ebp - 0x18], dl
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0xa8], edx
mov eax, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0x64]
mov edx, dword [eax]
sub edx, dword [ecx]
mov dword [ebp - 0x110], edx
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x70]
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], ecx
movsx edx, word [ebp - 0x20]
mov eax, dword [ebp - 0x27c]
movsx ecx, word [eax]
add edx, ecx
mov word [ebp - 0xc0], dx
lea edx, [ebp - 0x40]
mov dword [0x41302c], edx
movsx eax, byte [ebp - 4]
movsx ecx, byte [ebp - 0x16]
add eax, ecx
mov byte [ebp - 0x11], al
movsx edx, byte [ebp - 0x1a]
mov eax, dword [ebp - 0x1dc]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x98]
mov byte [eax], dl
mov ecx, dword [ebp - 0x120]
mov dl, byte [ecx]
mov byte [ebp - 0x14], dl
cmp dword [ebp - 0x590], 0x848c
jae 0x402f94
mov eax, dword [ebp - 0x11c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xf]
add ecx, edx
mov byte [ebp - 2], cl
mov eax, dword [ebp - 0x590]
add eax, 0xab
mov dword [ebp - 0x590], eax
mov ecx, dword [ebp - 0xf8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x154]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x128]
mov byte [eax], dl
mov ecx, dword [ebp - 0x1bc]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x20]
add edx, eax
mov ecx, dword [ebp - 0x19c]
mov word [ecx], dx
movsx edx, byte [ebp - 0x1a]
mov eax, dword [ebp - 0x100]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 5], dl
mov edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x1dc]
movsx ecx, byte [ecx]
sar eax, cl
mov edx, dword [ebp - 0x11c]
mov byte [edx], al
mov eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x16]
xor ecx, edx
mov byte [0x413024], cl
movzx eax, word [ebp - 0x30c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x550], ax
mov ecx, dword [ebp - 0x11c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x120]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x208]
mov byte [eax], dl
mov ecx, dword [ebp - 0x158]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
or edx, ecx
mov eax, dword [ebp - 0x15c]
mov byte [eax], dl
lea ecx, [ebp - 0xcd0]
push ecx
mov edx, dword [ebp - 0x44c]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0xcd4], eax
movsx eax, byte [ebp - 0xa]
mov ecx, dword [ebp - 0x98]
movsx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x1b0]
mov byte [edx], al
movsx eax, byte [ebp - 0x16]
mov ecx, dword [ebp - 0x128]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0xb], al
mov eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 7]
sub ecx, edx
mov eax, dword [ebp - 0x188]
mov byte [eax], cl
movsx ecx, byte [ebp - 0xf]
mov edx, dword [ebp - 0x104]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0xa], cl
movsx ecx, byte [0x413024]
mov edx, dword [ebp - 0x168]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x98]
mov byte [edx], cl
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xb]
sub ecx, edx
mov byte [ebp - 9], cl
movzx eax, word [ebp - 0x28]
movzx ecx, word [ebp - 0x40]
add eax, ecx
mov edx, dword [0x41302c]
mov word [edx], ax
movsx eax, word [ebp - 0x30]
movsx ecx, word [ebp - 0x20]
add eax, ecx
mov word [ebp - 0xc0], ax
jmp 0x402ddc
lea edx, [ebp - 0x1a]
mov dword [ebp - 0x164], edx
lea eax, [ebp - 0x15]
mov dword [ebp - 0x1f8], eax
movsx ecx, byte [ebp - 0x14]
movsx edx, byte [ebp - 0xe]
add ecx, edx
mov eax, dword [ebp - 0x120]
mov byte [eax], cl
movsx ecx, byte [ebp - 7]
movsx edx, byte [ebp - 0xa]
add ecx, edx
mov byte [ebp - 0xf], cl
mov eax, dword [ebp - 0x128]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 7]
sub ecx, edx
mov eax, dword [ebp - 0xf8]
mov byte [eax], cl
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xcd8], eax
movsx ecx, byte [ebp - 0x13]
movsx edx, byte [ebp - 0x15]
add ecx, edx
mov byte [ebp - 0xc], cl
movsx eax, byte [ebp - 0xa]
mov ecx, dword [ebp - 0x98]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 1], al
mov eax, dword [ebp - 0xe0]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x88]
movzx eax, word [edx]
sub ecx, eax
mov edx, dword [0x41302c]
mov word [edx], cx
mov eax, dword [ebp - 0x164]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x14]
add ecx, edx
mov eax, dword [ebp - 0x180]
mov byte [eax], cl
movsx edx, byte [ebp - 0xb]
movsx ecx, byte [ebp - 0xc]
shl edx, cl
mov byte [ebp - 0xf], dl
mov eax, dword [ebp - 0x13c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x15]
or ecx, edx
mov eax, dword [ebp - 0xf8]
mov byte [eax], cl
mov ecx, dword [ebp - 0x130]
movsx edx, word [ecx]
movsx eax, word [ebp - 0x20]
sub edx, eax
mov ecx, dword [ebp - 0x130]
mov word [ecx], dx
movsx edx, byte [ebp - 4]
movsx eax, byte [ebp - 0xe]
add edx, eax
mov byte [ebp - 0x10], dl
mov ecx, dword [ebp - 0x128]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x10]
add edx, eax
mov ecx, dword [ebp - 0x128]
mov byte [ecx], dl
mov edx, dword [ebp - 0x164]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x16]
sub eax, ecx
mov byte [ebp - 0xe], al
mov edx, dword [ebp - 0x154]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xf8]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 3], al
mov eax, dword [ebp - 0xe0]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x88]
movzx eax, word [edx]
add ecx, eax
mov edx, dword [0x41302c]
mov word [edx], cx
movsx eax, byte [ebp - 0xb]
mov ecx, dword [ebp - 0x154]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 6], al
movsx eax, byte [ebp - 0x17]
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0xc], al
movsx eax, byte [ebp - 0xa]
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x9c]
mov byte [ecx], al
movsx edx, byte [ebp - 5]
mov eax, dword [ebp - 0x164]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x154]
mov byte [ecx], dl
mov edx, dword [ebp - 0x164]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x11c]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0xe], al
movsx eax, byte [ebp - 0xe]
mov ecx, dword [ebp - 0x128]
movsx edx, byte [ecx]
xor eax, edx
mov ecx, dword [ebp - 0x11c]
mov byte [ecx], al
mov edx, dword [ebp - 0x13c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x120]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x11], al
movzx eax, word [ebp - 0x28]
movzx ecx, word [ebp - 0x40]
add eax, ecx
mov edx, dword [ebp - 0xe0]
mov word [edx], ax
mov eax, dword [0x413028]
mov ecx, dword [eax]
sub ecx, dword [0x413020]
mov edx, dword [0x413028]
mov dword [edx], ecx
mov eax, dword [ebp - 0x88]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x40]
add ecx, edx
mov eax, dword [ebp - 0x88]
mov word [eax], cx
mov ecx, dword [ebp - 0x94]
mov edx, dword [ecx]
add edx, dword [ebp - 0xac]
mov eax, dword [ecx + 4]
adc eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0x94]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x1d8]
mov eax, dword [edx]
add eax, dword [ebp - 0x74]
mov ecx, dword [edx + 4]
adc ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x1a4]
mov dword [edx], eax
mov dword [edx + 4], ecx
movsx eax, word [ebp - 0xc0]
movsx ecx, word [ebp - 0x30]
sub eax, ecx
mov edx, dword [ebp - 0x1e0]
mov word [edx], ax
movsx eax, byte [ebp - 0x16]
movsx ecx, byte [ebp - 7]
or eax, ecx
mov byte [ebp - 6], al
movsx edx, byte [ebp - 0xb]
mov eax, dword [ebp - 0x164]
movsx ecx, byte [eax]
shl edx, cl
mov ecx, dword [ebp - 0xdc]
mov byte [ecx], dl
movsx edx, byte [ebp - 0xf]
movsx eax, byte [ebp - 4]
sub edx, eax
mov byte [ebp - 0xa], dl
mov ecx, dword [ebp - 0x13c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x13]
add edx, eax
mov byte [ebp - 0x16], dl
mov ecx, dword [ebp - 0x120]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0xe]
add edx, eax
mov byte [0x413024], dl
mov ecx, dword [ebp - 0x1f8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x13], dl
movsx edx, word [ebp - 0x20]
movsx eax, word [ebp - 0xc0]
add edx, eax
mov ecx, dword [ebp - 0x29c]
mov word [ecx], dx
mov edx, dword [ebp - 0x594]
sub edx, 0x25
mov dword [ebp - 0x594], edx
movsx eax, byte [ebp - 5]
mov ecx, dword [ebp - 0xd8]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x168]
mov byte [ecx], al
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x16]
add eax, ecx
mov edx, dword [ebp - 0xb4]
mov byte [edx], al
mov eax, dword [ebp - 0xd8]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xc]
add ecx, edx
mov byte [ebp - 7], cl
push 0x3b5f
push 0x78d
push 0xe01
push 0x10c4
mov eax, dword [ebp - 0x44c]
push eax
call dword [sym.imp.KERNEL32.dll_LockFile]
mov dword [ebp - 0xcdc], eax
cmp dword [ebp - 0x594], 0x5eec
jae 0x402fa6
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x23c], ecx
mov edx, dword [ebp - 0x154]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x13]
sub eax, ecx
mov byte [ebp - 0x12], al
movsx edx, byte [ebp - 0x11]
movsx eax, byte [ebp - 0x14]
add edx, eax
mov ecx, dword [ebp - 0x1dc]
mov byte [ecx], dl
lea edx, [ebp - 0xa]
mov dword [ebp - 0x138], edx
lea eax, [ebp - 0x16]
mov dword [ebp - 0x238], eax
lea ecx, [ebp - 0x84]
mov dword [0x413030], ecx
mov edx, dword [ebp - 0x11c]
mov al, byte [edx]
mov byte [ebp - 0x19], al
movzx ecx, word [ebp - 0x30c]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x4bc], ax
mov edx, dword [ebp - 0x13c]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 6]
add eax, ecx
mov byte [ebp - 0x21], al
push str.ZGB_PuCh
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x54c], ax
mov edx, dword [ebp - 0x154]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0xe]
add eax, ecx
mov byte [ebp - 0xf], al
mov edx, dword [ebp - 0x598]
add edx, 0x86
mov dword [ebp - 0x598], edx
movsx eax, byte [ebp - 2]
mov ecx, dword [ebp - 0x154]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x168]
mov byte [ecx], al
mov edx, dword [ebp - 0x29c]
movsx eax, word [edx]
mov ecx, dword [ebp - 0x27c]
movsx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x130]
mov word [ecx], ax
mov edx, dword [ebp - 0x9c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x100]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x104]
mov byte [ecx], al
movsx edx, byte [ebp - 1]
mov eax, dword [ebp - 0x1f8]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 8], dl
mov edx, dword [ebp - 0x128]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
add eax, edx
mov byte [0x413024], al
mov eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xc]
add ecx, edx
mov byte [ebp - 0xa], cl
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 0xa]
add eax, ecx
mov edx, dword [ebp - 0xb4]
mov byte [edx], al
movsx eax, byte [ebp - 0x11]
movsx ecx, byte [ebp - 0x1a]
add eax, ecx
mov edx, dword [ebp - 0x164]
mov byte [edx], al
movsx eax, byte [ebp - 9]
mov ecx, dword [ebp - 0x15c]
movsx edx, byte [ecx]
xor eax, edx
mov byte [ebp - 0x11], al
movsx eax, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x1b8]
movsx ecx, byte [ecx]
sar eax, cl
mov edx, dword [ebp - 0x128]
mov byte [edx], al
mov eax, dword [ebp - 0x154]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x120]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x19], cl
mov ecx, dword [ebp - 0x138]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 2], dl
mov ecx, dword [ebp - 0x154]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x11]
or edx, eax
mov ecx, dword [ebp - 0x158]
mov byte [ecx], dl
cmp dword [ebp - 0x598], 0x8ee1
jne 0x403397
mov edx, dword [ebp - 0xf4]
sub edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0xf0]
sbb eax, dword [ebp - 0x70]
mov dword [0x413010], edx
mov dword [0x413014], eax
mov ecx, dword [ebp - 0x19c]
movsx edx, word [ecx]
mov eax, dword [ebp - 0x130]
movsx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0x6c], dx
mov edx, dword [ebp - 0x120]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x11]
sub eax, ecx
mov edx, dword [ebp - 0x13c]
mov byte [edx], al
mov eax, dword [ebp - 0x164]
mov cl, byte [eax]
mov byte [ebp - 0x38], cl
lea edx, [ebp - 0xb]
mov dword [ebp - 0x1d4], edx
cmp dword [ebp - 0x59c], 0x1883
je 0x4037b7
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 6]
add ecx, edx
mov byte [ebp - 1], cl
call dword [sym.imp.KERNEL32.dll_CreateTimerQueue]
mov dword [ebp - 0xce0], eax
mov eax, dword [ebp - 0x128]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x11c]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x15], cl
movsx ecx, byte [ebp - 0x12]
mov edx, dword [ebp - 0x138]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 9], cl
mov ecx, dword [ebp - 0x128]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x14]
add edx, eax
mov ecx, dword [ebp - 0x168]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x11]
mov eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
add edx, ecx
mov byte [0x413024], dl
lea edx, [ebp - 0xeec]
push edx
mov eax, dword [ebp - 0x44c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
mov dword [ebp - 0x698], eax
movsx ecx, byte [ebp - 0x10]
mov edx, dword [ebp - 0x168]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0xdc]
mov byte [edx], cl
mov eax, dword [ebp - 0x164]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x98]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0xd8]
mov byte [edx], cl
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 0x11]
add eax, ecx
mov edx, dword [ebp - 0x1b8]
mov byte [edx], al
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xb]
add ecx, edx
mov eax, dword [ebp - 0x9c]
mov byte [eax], cl
mov ecx, dword [ebp - 0x94]
mov edx, dword [ecx]
sub edx, dword [ebp - 0xac]
mov eax, dword [ecx + 4]
sbb eax, dword [ebp - 0xa8]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0xcc]
add edx, dword [ecx]
mov dword [ebp - 0x110], edx
movsx eax, word [ebp - 0x6c]
mov ecx, dword [ebp - 0x29c]
movsx edx, word [ecx]
or eax, edx
mov ecx, dword [ebp - 0x27c]
mov word [ecx], ax
mov edx, dword [ebp - 0xe0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x88]
movzx ecx, word [ecx]
shl eax, cl
mov edx, dword [ebp - 0xe0]
mov word [edx], ax
mov eax, dword [0x413028]
mov ecx, dword [eax]
sub ecx, 0x51bb
mov dword [0x413020], ecx
mov edx, dword [ebp - 0xf4]
add edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0xf0]
adc eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x23c]
mov dword [ecx], edx
mov dword [ecx + 4], eax
movsx edx, word [ebp - 0x30]
movsx eax, word [ebp - 0x6c]
add edx, eax
mov ecx, dword [ebp - 0x1bc]
mov word [ecx], dx
movsx edx, byte [0x413024]
mov eax, dword [ebp - 0x104]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0xb], dl
movsx edx, byte [ebp - 8]
mov eax, dword [ebp - 0x1b8]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x11c]
mov byte [eax], dl
movsx ecx, byte [ebp - 5]
movsx edx, byte [ebp - 0x17]
add ecx, edx
mov eax, dword [ebp - 0x100]
mov byte [eax], cl
movsx ecx, byte [ebp - 3]
mov edx, dword [ebp - 0x1d4]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0xb4]
mov byte [edx], cl
mov eax, dword [ebp - 0x59c]
add eax, 9
mov dword [ebp - 0x59c], eax
movsx ecx, byte [ebp - 5]
mov edx, dword [ebp - 0x154]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0xdc]
mov byte [edx], cl
movsx eax, word [ebp - 0x30]
mov ecx, dword [ebp - 0x19c]
movsx edx, word [ecx]
add eax, edx
mov word [ebp - 0x6c], ax
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 0xb]
and eax, ecx
mov byte [0x413024], al
mov edx, dword [ebp - 0x180]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x21]
xor eax, ecx
mov edx, dword [ebp - 0x138]
mov byte [edx], al
jmp 0x40355c
movsx eax, byte [ebp - 0xa]
movsx ecx, byte [ebp - 0x17]
sar eax, cl
mov byte [ebp - 0x75], al
mov ecx, dword [ebp - 0x138]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1f8]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 9], dl
movsx edx, byte [ebp - 6]
movsx eax, byte [ebp - 0x12]
add edx, eax
mov ecx, dword [ebp - 0x164]
mov byte [ecx], dl
mov edx, dword [ebp - 0x104]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xdc]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x15], al
movsx eax, byte [ebp - 0xe]
movsx ecx, byte [ebp - 4]
add eax, ecx
mov edx, dword [ebp - 0x138]
mov byte [edx], al
mov eax, dword [ebp - 0x1d4]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x9c]
mov byte [edx], cl
movsx eax, byte [ebp - 0x10]
movsx ecx, byte [ebp - 0xf]
add eax, ecx
mov edx, dword [ebp - 0x1b0]
mov byte [edx], al
mov eax, dword [ebp - 0x5a0]
sub eax, 0xb0
mov dword [ebp - 0x5a0], eax
mov ecx, dword [0x413028]
mov edx, dword [ecx]
sub edx, dword [0x413020]
mov eax, dword [0x413028]
mov dword [eax], edx
movsx ecx, byte [ebp - 0x12]
mov edx, dword [ebp - 0x138]
movsx eax, byte [edx]
or ecx, eax
mov edx, dword [ebp - 0xd8]
mov byte [edx], cl
mov eax, dword [ebp - 0x120]
movsx edx, byte [eax]
mov eax, dword [ebp - 0x1dc]
movsx ecx, byte [eax]
shl edx, cl
mov ecx, dword [ebp - 0x238]
mov byte [ecx], dl
movsx edx, word [ebp - 0x20]
movsx eax, word [ebp - 0x6c]
sub edx, eax
mov ecx, dword [ebp - 0x27c]
mov word [ecx], dx
mov edx, dword [ebp - 0x138]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x19]
add eax, ecx
mov edx, dword [ebp - 0x168]
mov byte [edx], al
cmp dword [ebp - 0x5a0], 0x1226
ja 0x4037c4
mov al, byte [ebp - 0x17]
mov byte [ebp - 0x23], al
movsx ecx, byte [ebp - 8]
mov edx, dword [ebp - 0x168]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x188]
mov byte [edx], cl
lea eax, [ebp - 6]
mov dword [ebp - 0x220], eax
mov ecx, dword [ebp - 0x98]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 5]
add edx, eax
mov byte [ebp - 0x43], dl
mov cl, byte [ebp - 0x12]
mov byte [0x413025], cl
movsx edx, byte [ebp - 0xb]
mov eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x120]
mov byte [eax], dl
mov ecx, dword [ebp - 0x23c]
mov edx, dword [ebp - 0x74]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x70]
sbb eax, dword [ecx + 4]
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0xf0], eax
movsx ecx, byte [ebp - 1]
mov edx, dword [ebp - 0x244]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 8], cl
mov ecx, dword [ebp - 0x168]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x16], dl
movsx edx, byte [0x413025]
movsx eax, byte [ebp - 0x23]
sub edx, eax
mov byte [ebp - 0xf], dl
movsx ecx, word [ebp - 0x30]
movsx edx, word [ebp - 0xc0]
add ecx, edx
mov word [ebp - 0x20], cx
movsx eax, byte [ebp - 4]
movsx ecx, byte [ebp - 0x38]
add eax, ecx
mov edx, dword [ebp - 0x220]
mov byte [edx], al
movsx eax, byte [ebp - 0x10]
mov ecx, dword [ebp - 0x168]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x188]
mov byte [ecx], al
mov edx, dword [0x413020]
sub edx, 0x4a39
mov eax, dword [0x413028]
mov dword [eax], edx
mov ecx, dword [ebp - 0x220]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x138]
mov byte [eax], dl
movsx ecx, byte [ebp - 0x14]
movsx edx, byte [ebp - 0x43]
add ecx, edx
mov byte [ebp - 0xf], cl
movsx eax, byte [ebp - 0x21]
mov ecx, dword [ebp - 0x120]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x154]
mov byte [ecx], al
movsx edx, byte [ebp - 0xc]
movsx eax, byte [ebp - 0x11]
add edx, eax
mov ecx, dword [ebp - 0xb0]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x23]
movsx eax, byte [ebp - 0x10]
add edx, eax
mov ecx, dword [ebp - 0xb4]
mov byte [ecx], dl
mov edx, dword [ebp - 0x208]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x21]
add eax, ecx
mov edx, dword [ebp - 0x13c]
mov byte [edx], al
mov eax, dword [ebp - 0x1d4]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 5]
add ecx, edx
mov byte [ebp - 0x1a], cl
movsx eax, byte [ebp - 0x23]
mov ecx, dword [ebp - 0x154]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0x1a], al
push str.panXIYv.O5WU
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x4bc], ax
mov eax, dword [0x413028]
mov edx, dword [eax]
mov ecx, dword [0x413020]
sar edx, cl
mov eax, dword [0x413028]
mov dword [eax], edx
mov ecx, dword [ebp - 0x94]
mov edx, dword [ebp - 0x84]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x80]
xor eax, dword [ecx + 4]
mov dword [ebp - 0xac], edx
mov dword [ebp - 0xa8], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xce4], eax
movzx ecx, word [ebp - 0x28]
movzx edx, word [ebp - 0x40]
or ecx, edx
mov eax, dword [ebp - 0xe0]
mov word [eax], cx
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0x124], ecx
movzx edx, word [ebp - 0x28]
mov eax, dword [ebp - 0xe0]
movzx ecx, word [eax]
shl edx, cl
mov word [ebp - 0x40], dx
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ebp - 0xcc]
sub edx, dword [ecx]
mov dword [ebp - 0x124], edx
mov eax, dword [ebp - 0x19c]
movsx ecx, word [eax]
mov edx, dword [ebp - 0x1e0]
movsx eax, word [edx]
sub ecx, eax
mov word [ebp - 0x30], cx
mov ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 3]
sub edx, eax
mov ecx, dword [ebp - 0x13c]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x21]
movsx eax, byte [ebp - 0x17]
add edx, eax
mov ecx, dword [ebp - 0x1b8]
mov byte [ecx], dl
mov edx, dword [ebp - 0x5a4]
sub edx, 0x49
mov dword [ebp - 0x5a4], edx
mov eax, dword [0x413020]
sub eax, 0x297d
mov ecx, dword [0x413028]
mov dword [ecx], eax
movsx edx, byte [ebp - 0x19]
movsx eax, byte [ebp - 0x17]
add edx, eax
mov ecx, dword [ebp - 0x164]
mov byte [ecx], dl
mov edx, dword [ebp - 0x1b8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x11c]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0xb0]
mov byte [ecx], al
mov edx, dword [ebp - 0x15c]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x15]
add eax, ecx
mov edx, dword [ebp - 0x98]
mov byte [edx], al
mov eax, dword [ebp - 0x1a0]
movsx ecx, word [eax]
movsx edx, word [ebp - 0x6c]
add ecx, edx
mov eax, dword [ebp - 0x1e0]
mov word [eax], cx
mov ecx, dword [ebp - 0x128]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0xa]
sub edx, eax
mov byte [ebp - 9], dl
movsx ecx, byte [ebp - 0x19]
movsx edx, byte [ebp - 7]
add ecx, edx
mov eax, dword [ebp - 0x128]
mov byte [eax], cl
movsx ecx, byte [ebp - 0xc]
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x13c]
mov byte [edx], cl
cmp dword [ebp - 0x5a4], 0x58e7
ja 0x403918
lea eax, [ebp - 0x74]
mov dword [ebp - 0x1f4], eax
lea ecx, [ebp - 9]
mov dword [ebp - 0x1ec], ecx
mov edx, dword [ebp - 0x188]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x1a]
sub eax, ecx
mov byte [ebp - 0x38], al
mov edx, dword [0x413020]
add edx, 0x2261
mov eax, dword [0x413028]
mov dword [eax], edx
movsx ecx, byte [ebp - 7]
movsx edx, byte [ebp - 6]
or ecx, edx
mov byte [ebp - 0x10], cl
mov eax, dword [ebp - 0x11c]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 0x15]
shl edx, cl
mov eax, dword [ebp - 0x1b0]
mov byte [eax], dl
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x41
mov dword [ebp - 0x5a8], ecx
mov edx, dword [ebp - 0x104]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x100]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x1b8]
mov byte [ecx], al
mov edx, dword [ebp - 0x1dc]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x158]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x208]
mov byte [ecx], al
mov edx, dword [ebp - 0x15c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x1ec]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0xe], al
movsx eax, word [ebp - 0x6c]
mov ecx, dword [ebp - 0x27c]
movsx edx, word [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x1e0]
mov word [ecx], ax
push 0x3b5f
push 0x78d
push 0xe01
push 0x10c4
mov edx, dword [ebp - 0x44c]
push edx
call dword [sym.imp.KERNEL32.dll_UnlockFile]
mov dword [ebp - 0xce8], eax
mov eax, dword [ebp - 0x98]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xa]
add ecx, edx
mov eax, dword [ebp - 0x168]
mov byte [eax], cl
mov ecx, dword [ebp - 0x94]
mov edx, dword [ebp - 0xac]
add edx, dword [ecx]
mov eax, dword [ebp - 0xa8]
adc eax, dword [ecx + 4]
mov ecx, dword [0x413030]
mov dword [ecx], edx
mov dword [ecx + 4], eax
movsx edx, byte [ebp - 2]
movsx eax, byte [ebp - 0x38]
add edx, eax
mov ecx, dword [ebp - 0x1f8]
mov byte [ecx], dl
mov edx, dword [ebp - 0xf8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x23]
sub eax, ecx
mov edx, dword [ebp - 0x120]
mov byte [edx], al
mov eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x158]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x120]
mov byte [edx], cl
lea eax, [ebp - 0xec8]
push eax
mov ecx, dword [ebp - 0x44c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
mov dword [ebp - 0x698], eax
movsx edx, byte [ebp - 0x21]
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
xor edx, ecx
mov byte [ebp - 6], dl
cmp dword [ebp - 0x5a8], 0x8e28
jb 0x403c27
mov edx, dword [ebp - 0xcc]
mov dword [ebp - 0x69c], edx
cmp dword [ebp - 0x69c], 0
je 0x403de1
jmp 0x4105bc
movsx eax, byte [0x413024]
mov ecx, dword [ebp - 0x1b0]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x168]
mov byte [ecx], al
lea edx, [ebp - 7]
mov dword [0x413034], edx
mov ax, word [ebp - 0x30]
mov word [ebp - 0xfc], ax
mov ecx, dword [ebp - 0x208]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x32], dl
lea edx, [ebp - 6]
mov dword [ebp - 0x230], edx
lea eax, [ebp - 0x32]
mov dword [ebp - 0x2a4], eax
movsx ecx, byte [ebp - 7]
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x1d4]
mov byte [edx], cl
mov eax, dword [ebp - 0x168]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xb]
add ecx, edx
mov byte [ebp - 0x39], cl
lea eax, [ebp - 0x11]
mov dword [ebp - 0x24c], eax
lea ecx, [ebp - 0xe]
mov dword [ebp - 0x274], ecx
lea edx, [ebp - 0x21]
mov dword [0x413038], edx
push 0
push 4
push 4
push 0
push 1
push 0x80000000
push str.WgjZxu_vAjL8
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x628], eax
mov dword [ebp - 0x5b4], 0x6c90
lea eax, [ebp - 0xe]
mov dword [ebp - 0x340], eax
call dword [sym.imp.KERNEL32.dll_CreateTimerQueue]
mov dword [ebp - 0x6e0], eax
mov ecx, dword [ebp - 0x1ec]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 5]
add edx, eax
mov byte [ebp - 0x1a], dl
movsx ecx, byte [ebp - 9]
movsx edx, byte [ebp - 4]
sub ecx, edx
mov byte [ebp - 0x15], cl
movsx eax, byte [ebp - 0x14]
mov ecx, dword [ebp - 0x24c]
movsx ecx, byte [ecx]
shl eax, cl
mov byte [ebp - 0x19], al
mov edx, dword [ebp - 0x1bc]
movsx eax, word [edx]
mov ecx, dword [ebp - 0x130]
movsx edx, word [ecx]
or eax, edx
mov ecx, dword [ebp - 0x29c]
mov word [ecx], ax
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x110]
sub eax, dword [edx]
mov ecx, dword [ebp - 0xc8]
mov dword [ecx], eax
mov edx, dword [ebp - 0xe0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x88]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x28], ax
movzx eax, word [ebp - 0x40]
mov ecx, dword [ebp - 0x88]
movzx edx, word [ecx]
add eax, edx
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x84]
add eax, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x80]
adc ecx, dword [ebp - 0xa8]
mov dword [section..data], eax
mov dword [0x413004], ecx
mov edx, dword [ebp - 0x1d8]
mov eax, dword [ebp - 0x74]
add eax, dword [edx]
mov ecx, dword [ebp - 0x70]
adc ecx, dword [edx + 4]
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], ecx
movsx edx, word [ebp - 0xfc]
movsx eax, word [ebp - 0x30]
sub edx, eax
mov word [ebp - 0x6c], dx
movsx ecx, byte [ebp - 8]
movsx edx, byte [ebp - 0x13]
add ecx, edx
mov eax, dword [ebp - 0x1d4]
mov byte [eax], cl
mov ecx, dword [ebp - 0x5ac]
add ecx, 0xd2
mov dword [ebp - 0x5ac], ecx
mov edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x238]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 9], al
movsx eax, byte [ebp - 0x23]
mov ecx, dword [ebp - 0x138]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x1b8]
mov byte [ecx], al
movsx edx, byte [ebp - 6]
movsx eax, byte [ebp - 0x14]
add edx, eax
mov byte [ebp - 0x32], dl
movsx ecx, byte [ebp - 0xf]
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x1b0]
mov byte [edx], cl
movsx eax, word [ebp - 0xc0]
mov ecx, dword [ebp - 0x19c]
movsx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x1bc]
mov word [ecx], ax
movsx edx, byte [ebp - 5]
movsx eax, byte [ebp - 0x14]
sub edx, eax
mov ecx, dword [0x413038]
mov byte [ecx], dl
mov edx, dword [ebp - 0x9c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 8], al
movsx eax, byte [ebp - 0x14]
mov ecx, dword [ebp - 0x168]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x158]
mov byte [ecx], al
mov edx, dword [ebp - 0x120]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0xf8]
mov byte [ecx], al
mov edx, dword [0x413034]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x24c]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x13c]
mov byte [ecx], al
movsx edx, byte [ebp - 9]
mov eax, dword [ebp - 0x15c]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x274]
mov byte [eax], dl
movsx ecx, byte [ebp - 1]
mov edx, dword [ebp - 0x220]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 8], cl
movsx ecx, byte [ebp - 6]
movsx edx, byte [ebp - 0x10]
add ecx, edx
mov byte [ebp - 0x16], cl
movsx eax, byte [ebp - 7]
movsx ecx, byte [ebp - 0x19]
sar eax, cl
mov ecx, dword [ebp - 0xd8]
mov byte [ecx], al
cmp dword [ebp - 0x5ac], 0x4cc5
jb 0x403ebb
lea edx, [ebp - 0x21]
mov dword [0x41303c], edx
movzx eax, word [0x413008]
mov dword [ebp - 0x624], eax
cmp dword [ebp - 0x624], 0x83
je 0x410587
cmp dword [ebp - 0x624], 0xfff4
je 0x40412d
jmp 0x41059e
mov cx, word [ebp - 0x20]
mov word [ebp - 0xa0], cx
movzx edx, word [ebp - 0x40]
mov dword [ebp - 0x6a0], edx
cmp dword [ebp - 0x6a0], 0x1b3
je 0x404150
jmp 0x4041ad
movsx eax, byte [ebp - 4]
mov ecx, dword [ebp - 0x9c]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0xc], al
lea eax, [ebp - 0x13f4]
push eax
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
mov dword [ebp - 0xcec], eax
movsx ecx, byte [ebp - 8]
mov edx, dword [ebp - 0x24c]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x164]
mov byte [edx], cl
mov eax, dword [ebp - 0x220]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xf8]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x274]
mov byte [edx], cl
jmp 0x410557
lea eax, [ebp - 0x17]
mov dword [0x413040], eax
cmp dword [ebp - 0x5b0], 0x96fc
ja 0x404494
movsx ecx, byte [ebp - 0x43]
mov edx, dword [ebp - 0xdc]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 8], cl
mov ecx, dword [ebp - 0x23c]
mov edx, dword [ebp - 0xf4]
sub edx, dword [ecx]
mov eax, dword [ebp - 0xf0]
sbb eax, dword [ecx + 4]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], eax
mov ecx, dword [0x413038]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1b8]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x220]
mov byte [eax], dl
mov ecx, dword [ebp - 0x138]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 3]
add edx, eax
mov ecx, dword [ebp - 0x104]
mov byte [ecx], dl
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 9]
add eax, ecx
mov byte [ebp - 6], al
movsx edx, word [ebp - 0x6c]
mov eax, dword [ebp - 0x1e0]
movsx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x1bc]
mov word [eax], dx
mov ecx, dword [ebp - 0xdc]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0xb]
sub edx, eax
mov ecx, dword [ebp - 0x15c]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x12]
mov eax, dword [0x413038]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x158]
mov byte [eax], dl
mov ecx, dword [ebp - 0x98]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x100]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [0x41303c]
mov byte [eax], dl
mov ecx, dword [ebp - 0x104]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x24c]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x180]
mov byte [eax], dl
mov ecx, dword [ebp - 0x5b0]
add ecx, 0xd2
mov dword [ebp - 0x5b0], ecx
movsx edx, byte [ebp - 0x17]
movsx eax, byte [ebp - 0xf]
add edx, eax
mov ecx, dword [ebp - 0xd8]
mov byte [ecx], dl
mov edx, dword [ebp - 0x1b0]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 6]
or eax, ecx
mov edx, dword [ebp - 0x238]
mov byte [edx], al
mov eax, dword [ebp - 0x9c]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 0xe]
shl edx, cl
mov byte [ebp - 0x19], dl
movsx eax, byte [ebp - 0x12]
movsx ecx, byte [0x413024]
sub eax, ecx
mov edx, dword [ebp - 0x1b0]
mov byte [edx], al
mov eax, dword [ebp - 0x220]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x168]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x12], cl
mov ecx, dword [ebp - 0xdc]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x1a]
add edx, eax
mov ecx, dword [ebp - 0x13c]
mov byte [ecx], dl
mov edx, dword [ebp - 0x100]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0xa]
sub eax, ecx
mov byte [ebp - 0x16], al
mov edx, dword [ebp - 0x1b8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x238]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [0x413040]
mov byte [ecx], al
mov edx, dword [ebp - 0x1b8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x138]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x98]
mov byte [ecx], al
movzx edx, byte [ebp - 0x18]
add edx, 0x19
mov byte [ebp - 0xd], dl
mov eax, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xcc]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x64]
mov dword [edx], ecx
mov eax, dword [ebp - 0xe0]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x28]
add ecx, edx
mov word [ebp - 0x40], cx
mov eax, dword [0x413030]
mov ecx, dword [ebp - 0xac]
xor ecx, dword [eax]
mov edx, dword [ebp - 0xa8]
xor edx, dword [eax + 4]
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov dword [eax + 4], edx
movsx edx, word [ebp - 0xfc]
movsx ecx, word [0x41300c]
sar edx, cl
mov word [ebp - 0x30], dx
lea eax, [ebp - 0xed4]
push eax
mov ecx, dword [ebp - 0x628]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
mov dword [ebp - 0xcf0], eax
movsx edx, byte [ebp - 0xe]
movsx eax, byte [ebp - 7]
and edx, eax
mov ecx, dword [ebp - 0x208]
mov byte [ecx], dl
mov edx, dword [ebp - 0x24c]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x1a]
sub eax, ecx
mov byte [ebp - 0x23], al
movsx edx, byte [ebp - 9]
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
add edx, ecx
mov byte [0x413024], dl
lea edx, [ebp - 0xec8]
push edx
mov eax, dword [ebp - 0x628]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
mov dword [ebp - 0xcf4], eax
movsx ecx, byte [ebp - 0x13]
mov edx, dword [ebp - 0x13c]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x15c]
mov byte [edx], cl
movsx eax, byte [ebp - 0xb]
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x158]
mov byte [ecx], al
jmp 0x4041b5
mov edx, dword [ebp - 0x1b0]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x100]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x120]
mov byte [ecx], al
lea edx, [ebp - 0x30]
mov dword [ebp - 0x210], edx
lea eax, [ebp - 0x43]
mov dword [ebp - 0x22c], eax
mov ecx, dword [ebp - 0x1f8]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x12]
add edx, eax
mov byte [ebp - 0x48], dl
lea ecx, [ebp - 9]
mov dword [ebp - 0x2d4], ecx
mov edx, dword [ebp - 0xf4]
sub edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0xf0]
sbb eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x23c]
mov dword [ecx], edx
mov dword [ecx + 4], eax
lea edx, [ebp - 5]
mov dword [ebp - 0x378], edx
cmp dword [ebp - 0x5b4], 0x75b4
ja 0x404610
movsx eax, byte [ebp - 0x23]
mov ecx, dword [0x413038]
movsx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x22c]
mov byte [edx], al
call dword [sym.imp.KERNEL32.dll_AreFileApisANSI]
mov dword [ebp - 0xcf8], eax
mov eax, dword [ebp - 0x164]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x104]
movsx eax, byte [edx]
or ecx, eax
mov edx, dword [0x41303c]
mov byte [edx], cl
mov eax, dword [ebp - 0x2a4]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x15]
sub ecx, edx
mov byte [ebp - 8], cl
movsx eax, byte [ebp - 0xf]
movsx ecx, byte [ebp - 6]
add eax, ecx
mov edx, dword [ebp - 0xdc]
mov byte [edx], al
mov eax, dword [ebp - 0x98]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x75]
add ecx, edx
mov eax, dword [ebp - 0x238]
mov byte [eax], cl
mov ecx, dword [ebp - 0x168]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 1]
add edx, eax
mov byte [ebp - 0x10], dl
movsx ecx, byte [ebp - 0x43]
mov edx, dword [ebp - 0x9c]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x15c]
mov byte [edx], cl
mov eax, dword [ebp - 0x5b4]
add eax, 0x41
mov dword [ebp - 0x5b4], eax
movsx ecx, word [ebp - 0xc0]
mov edx, dword [ebp - 0x19c]
movsx eax, word [edx]
sub ecx, eax
mov word [ebp - 0xfc], cx
mov ecx, dword [ebp - 0x1ec]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x120]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x14], dl
movsx edx, byte [ebp - 3]
mov eax, dword [ebp - 0x1f8]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [0x413038]
mov byte [eax], dl
jmp 0x404503
mov dword [ebp - 0x5b8], 0xe61a42c7
mov ecx, dword [ebp - 0x164]
mov dl, byte [ecx]
mov byte [ebp - 0x41], dl
movzx eax, byte [ebp - 0xd]
sub eax, 3
movzx ecx, byte [ebp - 0x18]
cmp eax, ecx
jle 0x404667
mov edx, dword [ebp - 0x230]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x154]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x1ec]
mov byte [ecx], al
mov edx, dword [ebp - 0x188]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x2a4]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 1], al
lea eax, [ebp - 0x19]
mov dword [ebp - 0x2bc], eax
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ecx]
add edx, dword [ebp - 0x110]
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0xcc]
cmp edx, ecx
ja 0x4046be
lea edx, [ebp - 0x21]
mov dword [ebp - 0x33c], edx
movsx eax, byte [ebp - 0x21]
movsx ecx, byte [ebp - 0x10]
add eax, ecx
mov byte [ebp - 0xe], al
lea edx, [ebp - 2]
mov dword [ebp - 0x2ac], edx
mov eax, dword [ebp - 0x2d4]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x15]
add ecx, edx
mov byte [ebp - 0x7b], cl
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0xac]
sub ecx, dword [eax]
mov edx, dword [ebp - 0xa8]
sbb edx, dword [eax + 4]
mov eax, dword [0x413030]
mov esi, dword [eax]
add esi, dword [ebp - 0x84]
mov eax, dword [eax + 4]
adc eax, dword [ebp - 0x80]
mov dword [ebp - 0xae8], ecx
mov dword [ebp - 0xae4], edx
mov dword [ebp - 0xaf0], esi
mov dword [ebp - 0xaec], eax
mov ecx, dword [ebp - 0xae8]
cmp ecx, dword [ebp - 0xaf0]
jne 0x404746
mov edx, dword [ebp - 0xae4]
cmp edx, dword [ebp - 0xaec]
jne 0x404746
movsx eax, byte [ebp - 7]
mov ecx, dword [ebp - 0x24c]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [0x413038]
mov byte [ecx], al
mov edx, dword [ebp - 0x6d4]
push edx
call dword [sym.imp.KERNEL32.dll_GetTapeStatus]
mov dword [ebp - 0x12c], eax
mov eax, dword [0x413020]
add eax, 0x233
mov ecx, dword [0x413028]
cmp eax, dword [ecx]
jg 0x404782
mov edx, dword [ebp - 0x19c]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x30]
add eax, ecx
mov word [ebp - 0xc0], ax
movsx edx, byte [ebp - 0x19]
movsx eax, byte [ebp - 0xc]
and edx, eax
mov ecx, dword [ebp - 0xb4]
mov byte [ecx], dl
lea edx, [ebp - 0xc]
mov dword [ebp - 0x290], edx
lea eax, [ebp - 6]
mov dword [ebp - 0x2d0], eax
mov ecx, dword [ebp - 0x244]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x230]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x33], dl
movsx ecx, byte [ebp - 0x41]
movsx edx, byte [ebp - 0x12]
xor ecx, edx
mov eax, dword [ebp - 0xdc]
mov byte [eax], cl
mov ecx, dword [ebp - 0x5b8]
add ecx, 0x19e9bd39
mov dword [ebp - 0x5b8], ecx
movzx edx, byte [ebp - 0x18]
or edx, 0x25
movzx eax, byte [ebp - 0xd]
cmp edx, eax
jle 0x40487c
mov ecx, dword [ebp - 0xd4]
mov edx, dword [0x413030]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.004107f0
mov ecx, dword [ebp - 0x94]
mov esi, dword [ebp - 0xac]
sub esi, dword [ecx]
mov edi, dword [ebp - 0xa8]
sbb edi, dword [ecx + 4]
mov dword [ebp - 0xaf8], eax
mov dword [ebp - 0xaf4], edx
mov dword [ebp - 0xb00], esi
mov dword [ebp - 0xafc], edi
mov edx, dword [ebp - 0xaf4]
cmp edx, dword [ebp - 0xafc]
jl 0x40487c
jg 0x404845
mov eax, dword [ebp - 0xaf8]
cmp eax, dword [ebp - 0xb00]
jb 0x40487c
mov ecx, dword [ebp - 0x100]
mov dl, byte [ecx]
mov byte [ebp - 0x34], dl
lea eax, [ebp - 0x14]
mov dword [ebp - 0x4b8], eax
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x2bc]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [0x41300a], dl
lea edx, [ebp - 1]
mov dword [ebp - 0x344], edx
lea eax, [ebp - 0x23]
mov dword [ebp - 0x3a0], eax
mov ecx, dword [0x413028]
imul edx, dword [ecx], 0x6d17
cmp edx, dword [0x413020]
jle 0x410532
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x124]
mov edx, dword [ebp - 0x12c]
sub edx, dword [ebp - 0xcc]
cmp ecx, edx
jae 0x4048e2
mov eax, dword [ebp - 0x1f8]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x33]
add ecx, edx
mov eax, dword [ebp - 0x3a0]
mov byte [eax], cl
movzx ecx, word [ebp - 0x28]
movzx edx, word [ebp - 0x40]
add ecx, edx
mov eax, dword [ebp - 0xe0]
mov word [eax], cx
mov ecx, dword [ebp - 0x100]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 5]
add edx, eax
movsx ecx, byte [ebp - 9]
movsx eax, byte [ebp - 0x7b]
add ecx, eax
cmp edx, ecx
jl 0x404930
mov ecx, dword [ebp - 0xe0]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x88]
movzx ecx, word [eax]
sub edx, ecx
mov eax, dword [ebp - 0xe0]
mov word [eax], dx
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ebp - 0xcc]
add edx, dword [ecx]
mov dword [ebp - 0x124], edx
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x64]
add ecx, dword [edx]
mov eax, dword [ebp - 0x124]
sub eax, dword [ebp - 0x110]
cmp ecx, eax
je 0x404981
mov ecx, dword [0x413030]
mov edx, dword [ebp - 0xac]
add edx, dword [ecx]
mov eax, dword [ebp - 0xa8]
adc eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x94]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov edx, dword [0x413028]
mov eax, dword [edx]
or eax, 0x55e1
mov dword [0x413020], eax
mov ecx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x70]
mov ecx, dword [ecx]
call fcn.004107f0
mov ecx, dword [ebp - 0xf4]
sub ecx, dword [0x413010]
mov esi, dword [ebp - 0xf0]
sbb esi, dword [0x413014]
mov dword [ebp - 0xb08], eax
mov dword [ebp - 0xb04], edx
mov dword [ebp - 0xb10], ecx
mov dword [ebp - 0xb0c], esi
mov edx, dword [ebp - 0xb04]
cmp edx, dword [ebp - 0xb0c]
ja 0x404a51
jb 0x4049e2
mov eax, dword [ebp - 0xb08]
cmp eax, dword [ebp - 0xb10]
ja 0x404a51
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ecx]
add edx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x124]
add ecx, dword [eax]
cmp edx, ecx
jbe 0x404a36
mov edx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x74]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x70]
sbb ecx, dword [edx + 4]
mov edx, dword [ebp - 0x1f4]
mov dword [edx], eax
mov dword [edx + 4], ecx
movsx eax, word [ebp - 0xa0]
mov ecx, dword [ebp - 0x1e0]
movsx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x130]
mov word [ecx], ax
mov edx, dword [ebp - 0x180]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x33]
add eax, ecx
mov byte [ebp - 0x10], al
lea edx, [ebp - 0x7b]
mov dword [ebp - 0x268], edx
mov eax, dword [ebp - 0x94]
mov ecx, dword [0x413030]
mov edx, dword [eax]
add edx, dword [ecx]
mov eax, dword [eax + 4]
adc eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x84]
sub ecx, dword [ebp - 0xac]
mov esi, dword [ebp - 0x80]
sbb esi, dword [ebp - 0xa8]
mov dword [ebp - 0xb18], edx
mov dword [ebp - 0xb14], eax
mov dword [ebp - 0x8a4], ecx
mov dword [ebp - 0x8a0], esi
mov edx, dword [ebp - 0xb14]
cmp edx, dword [ebp - 0x8a0]
jl 0x410506
jg 0x404aba
mov eax, dword [ebp - 0xb18]
cmp eax, dword [ebp - 0x8a4]
jb 0x410506
mov ecx, dword [ebp - 0x124]
xor ecx, dword [ebp - 0x110]
mov edx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0x12c]
and eax, dword [edx]
cmp ecx, eax
jae 0x404b06
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 0x7b]
sar edx, cl
mov eax, dword [ebp - 0x138]
mov byte [eax], dl
movsx ecx, byte [ebp - 2]
mov edx, dword [ebp - 0x340]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x344]
mov byte [edx], cl
mov eax, dword [0x41303c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x244]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x168]
movsx eax, byte [edx]
mov edx, dword [ebp - 0xd8]
movsx edx, byte [edx]
sub eax, edx
cmp ecx, eax
je 0x4104d6
mov eax, dword [0x413028]
mov ecx, dword [eax]
add ecx, 0x4d3f
cmp ecx, dword [0x413020]
jg 0x404b73
mov edx, dword [0x41303c]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 8]
sub eax, ecx
mov edx, dword [ebp - 0x2bc]
mov byte [edx], al
mov eax, dword [ebp - 0x290]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 0x75]
shl edx, cl
mov byte [ebp - 1], dl
mov eax, dword [ebp - 0x230]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x344]
movsx eax, byte [edx]
or ecx, eax
movsx edx, byte [ebp - 0x15]
mov eax, dword [ebp - 0x11c]
movsx eax, byte [eax]
imul edx, eax
cmp ecx, edx
jne 0x404bce
mov ecx, dword [ebp - 0x98]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0xf8]
mov byte [eax], dl
movsx ecx, byte [ebp - 0xc]
mov edx, dword [ebp - 0xf8]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x340]
mov byte [edx], cl
lea eax, [ebp - 0x75]
mov dword [ebp - 0x32c], eax
lea ecx, [ebp - 5]
mov dword [ebp - 0x510], ecx
movzx edx, word [ebp - 0x28]
movzx eax, word [ebp - 0x40]
add edx, eax
mov ecx, dword [ebp - 0x88]
movzx eax, word [ecx]
movzx ecx, word [0x413008]
add eax, ecx
cmp edx, eax
jge 0x4104b2
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x110]
add eax, dword [edx]
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ecx]
add edx, dword [ebp - 0x12c]
cmp eax, edx
je 0x404c4a
mov eax, dword [ebp - 0xb0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x138]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [0x413038]
mov byte [edx], cl
movsx eax, byte [ebp - 0x1a]
movsx ecx, byte [ebp - 0xa]
add eax, ecx
mov byte [ebp - 9], al
mov edx, dword [ebp - 0x124]
add edx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x64]
add ecx, dword [eax]
cmp edx, ecx
ja 0x404caa
lea ecx, [ebp - 0x15]
mov dword [ebp - 0x264], ecx
mov edx, dword [ebp - 0x130]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x20]
sub eax, ecx
mov word [ebp - 0xa0], ax
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x6f8], eax
mov edx, dword [ebp - 0x274]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x244]
movsx edx, byte [ecx]
imul eax, edx
mov byte [ebp - 0x45], al
lea eax, [ebp - 0x16]
mov dword [ebp - 0x338], eax
mov cl, byte [ebp - 0x39]
mov byte [ebp - 0x36], cl
movsx edx, byte [ebp - 0x41]
mov eax, dword [ebp - 0x274]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x4b], dl
movsx ecx, byte [ebp - 0x10]
mov edx, dword [0x41303c]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x208]
movsx eax, byte [edx]
mov edx, dword [ebp - 0x128]
movsx esi, byte [edx]
cdq
idiv esi
cmp ecx, eax
jne 0x404d22
lea eax, [ebp - 0x11a4]
push eax
call dword [sym.imp.COMDLG32.dll_PageSetupDlgW]
mov dword [ebp - 0xcfc], eax
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x120]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x15c]
mov byte [eax], dl
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0xcc]
add edx, dword [ecx]
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x110]
cmp edx, ecx
jne 0x404e21
movsx edx, byte [ebp - 8]
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
add edx, ecx
mov byte [0x41300a], dl
call dword [sym.imp.KERNEL32.dll_CreateTimerQueue]
mov dword [ebp - 0x630], eax
mov edx, dword [0x413030]
mov eax, dword [edx]
add eax, dword [ebp - 0xac]
mov ecx, dword [edx + 4]
adc ecx, dword [ebp - 0xa8]
mov edx, dword [ebp - 0x94]
mov esi, dword [edx]
xor esi, dword [ebp - 0x84]
mov edx, dword [edx + 4]
xor edx, dword [ebp - 0x80]
mov dword [ebp - 0xb20], eax
mov dword [ebp - 0xb1c], ecx
mov dword [ebp - 0xb28], esi
mov dword [ebp - 0xb24], edx
mov eax, dword [ebp - 0xb1c]
cmp eax, dword [ebp - 0xb24]
jl 0x404e21
jg 0x404dc5
mov ecx, dword [ebp - 0xb20]
cmp ecx, dword [ebp - 0xb28]
jb 0x404e21
mov edx, dword [ebp - 0x1e0]
movsx eax, word [edx]
movsx ecx, word [ebp - 0x20]
and eax, ecx
mov edx, dword [ebp - 0x130]
movsx edx, word [edx]
mov ecx, dword [ebp - 0x1a0]
movsx ecx, word [ecx]
sar edx, cl
cmp eax, edx
je 0x404e21
movsx edx, byte [ebp - 2]
mov eax, dword [ebp - 0x2bc]
movsx ecx, byte [eax]
or edx, ecx
mov eax, dword [ebp - 0x264]
mov byte [eax], dl
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x298], ecx
lea edx, [ebp - 0x16]
mov dword [ebp - 0x348], edx
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x250], eax
movzx ecx, byte [ebp - 0x18]
shl ecx, 0xd
movzx edx, byte [ebp - 0xd]
cmp ecx, edx
jge 0x404e62
mov eax, dword [ebp - 0x208]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xb]
sub ecx, edx
mov eax, dword [ebp - 0x2d4]
mov byte [eax], cl
mov ecx, dword [ebp - 0x1a0]
movsx edx, word [ecx]
mov eax, dword [ebp - 0x1bc]
movsx ecx, word [eax]
sub edx, ecx
mov word [ebp - 0xa0], dx
mov edx, dword [ebp - 0x94]
mov esi, dword [ebp - 0xac]
sub esi, dword [edx]
mov edi, dword [ebp - 0xa8]
sbb edi, dword [edx + 4]
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x84]
push ecx
mov edx, dword [ebp - 0xd0]
push edx
mov eax, dword [ebp - 0xd4]
push eax
call fcn.004107b0
mov dword [ebp - 0xb30], esi
mov dword [ebp - 0xb2c], edi
mov dword [ebp - 0xb38], eax
mov dword [ebp - 0xb34], edx
mov ecx, dword [ebp - 0xb2c]
cmp ecx, dword [ebp - 0xb34]
jg 0x404f0a
jl 0x404ecd
mov edx, dword [ebp - 0xb30]
cmp edx, dword [ebp - 0xb38]
ja 0x404f0a
movsx eax, byte [ebp - 0xe]
movsx ecx, byte [ebp - 0x32]
imul eax, ecx
mov byte [ebp - 0x29], al
lea edx, [ebp - 0x4b]
mov dword [ebp - 0x2fc], edx
movsx eax, byte [ebp - 1]
movsx ecx, byte [ebp - 7]
add eax, ecx
mov byte [0x41300b], al
mov edx, dword [ebp - 0x348]
movsx eax, byte [edx]
mov ecx, dword [0x41303c]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0xb], al
lea eax, [ebp - 6]
mov dword [ebp - 0x248], eax
mov ecx, dword [ebp - 0x74]
add ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x70]
adc edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x1f4]
mov esi, dword [eax]
add esi, dword [0x413010]
mov eax, dword [eax + 4]
adc eax, dword [0x413014]
mov dword [ebp - 0xb40], ecx
mov dword [ebp - 0xb3c], edx
mov dword [ebp - 0xb48], esi
mov dword [ebp - 0xb44], eax
mov ecx, dword [ebp - 0xb3c]
cmp ecx, dword [ebp - 0xb44]
jb 0x404fa0
ja 0x404f72
mov edx, dword [ebp - 0xb40]
cmp edx, dword [ebp - 0xb48]
jbe 0x404fa0
movsx eax, byte [ebp - 0x14]
mov ecx, dword [ebp - 0x98]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0xf8]
mov byte [ecx], al
mov edx, dword [ebp - 0x1f8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x2d0]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x32], al
lea eax, [ebp - 0x19]
mov dword [ebp - 0x57c], eax
mov cl, byte [ebp - 0x1a]
mov byte [ebp - 0x181], cl
mov edx, dword [0x413010]
sub edx, dword [ebp - 0xf4]
mov eax, dword [0x413014]
sbb eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0x298]
mov esi, dword [ebp - 0x74]
add esi, dword [ecx]
mov edi, dword [ebp - 0x70]
adc edi, dword [ecx + 4]
mov dword [ebp - 0xb50], edx
mov dword [ebp - 0xb4c], eax
mov dword [ebp - 0xb58], esi
mov dword [ebp - 0xb54], edi
mov edx, dword [ebp - 0xb50]
cmp edx, dword [ebp - 0xb58]
jne 0x40500e
mov eax, dword [ebp - 0xb4c]
cmp eax, dword [ebp - 0xb54]
je 0x405037
movsx ecx, byte [ebp - 0xa]
mov edx, dword [ebp - 0x168]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x188]
mov byte [edx], cl
movsx eax, byte [ebp - 0x32]
movsx ecx, byte [ebp - 0x48]
sub eax, ecx
mov edx, dword [ebp - 0x2d4]
mov byte [edx], al
lea eax, [ebp - 0x34]
mov dword [0x413044], eax
movzx ecx, word [ebp - 0x40]
movzx edx, word [ebp - 0x28]
add ecx, edx
mov word [ebp - 0x68], cx
lea eax, [ebp - 0xd]
mov dword [ebp - 0x150], eax
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x204], ecx
movsx edx, byte [ebp - 0x14]
movsx eax, byte [ebp - 0x36]
imul edx, eax
mov ecx, dword [ebp - 0x100]
movsx eax, byte [ecx]
movsx ecx, byte [ebp - 8]
shl eax, cl
cmp edx, eax
jl 0x41048b
mov cx, word [ebp - 0xfc]
mov word [ebp - 0xa4], cx
imul edx, dword [0x413020], 0x1e81
mov eax, dword [0x413028]
cmp edx, dword [eax]
jl 0x4050d7
movsx ecx, byte [ebp - 0x29]
mov edx, dword [ebp - 0x138]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x274]
mov byte [edx], cl
lea eax, [ebp - 0x39]
mov dword [ebp - 0x388], eax
lea ecx, [ebp - 0x29]
mov dword [0x413048], ecx
lea edx, [ebp - 0x10]
mov dword [ebp - 0x2a0], edx
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x2e4], eax
mov ecx, dword [ebp - 0x3a0]
movsx edx, byte [ecx]
mov eax, dword [0x413040]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x35], dl
movsx edx, word [ebp - 0x6c]
movsx eax, word [ebp - 0xa4]
imul edx, eax
mov ecx, dword [ebp - 0x1a0]
mov word [ecx], dx
mov dword [ebp - 0x540], 0x34c3065a
lea edx, [ebp - 0x12]
mov dword [ebp - 0x26c], edx
mov al, byte [ebp - 0x13]
mov byte [ebp - 0x42], al
movzx ecx, word [ebp - 0x28]
movzx edx, word [ebp - 0x68]
sub ecx, edx
mov eax, dword [ebp - 0xe0]
movzx edx, word [eax]
mov eax, dword [ebp - 0x88]
movzx eax, word [eax]
add edx, eax
cmp ecx, edx
jne 0x41045f
mov ecx, dword [0x413010]
add ecx, dword [ebp - 0x74]
mov edx, dword [0x413014]
adc edx, dword [ebp - 0x70]
mov dword [ebp - 0x1ac], ecx
mov dword [ebp - 0x1a8], edx
movsx eax, byte [ebp - 0x181]
mov ecx, dword [ebp - 0x1dc]
movsx ecx, byte [ecx]
cdq
idiv ecx
mov byte [ebp - 0x4a], al
mov edx, dword [ebp - 0xe0]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x28]
sub eax, ecx
mov edx, dword [ebp - 0x88]
movzx ecx, word [edx]
mov edx, dword [0x41302c]
movzx edx, word [edx]
add ecx, edx
cmp eax, ecx
jg 0x410438
lea eax, [ebp - 0x14]
mov dword [ebp - 0x440], eax
mov ecx, dword [ebp - 0x12c]
xor ecx, dword [ebp - 0x110]
mov edx, dword [ebp - 0x64]
mov eax, dword [edx]
sub eax, dword [ebp - 0xcc]
cmp ecx, eax
jne 0x41040f
mov ecx, dword [0x413028]
mov edx, dword [ecx]
add edx, 0xf7d
cmp edx, dword [0x413020]
jg 0x40521c
movsx eax, byte [ebp - 3]
mov ecx, dword [ebp - 0x11c]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x510]
mov byte [ecx], al
mov edx, dword [ebp - 0x168]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x244]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0xd8]
mov byte [ecx], al
mov edx, dword [0x413028]
mov eax, dword [edx]
sub eax, 0x5efb
cmp eax, dword [0x413020]
jle 0x405259
movsx ecx, word [ebp - 0xfc]
movsx edx, word [ebp - 0x20]
or ecx, edx
mov word [ebp - 0x30], cx
movsx eax, byte [ebp - 0xe]
mov ecx, dword [ebp - 0x2fc]
movsx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x1f8]
mov byte [edx], al
mov eax, dword [ebp - 0x23c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0xf4]
mov edx, dword [eax + 4]
sbb edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x1a4]
mov esi, dword [eax]
add esi, dword [ebp - 0x74]
mov eax, dword [eax + 4]
adc eax, dword [ebp - 0x70]
mov dword [ebp - 0xb60], ecx
mov dword [ebp - 0xb5c], edx
mov dword [ebp - 0xb68], esi
mov dword [ebp - 0xb64], eax
mov ecx, dword [ebp - 0xb5c]
cmp ecx, dword [ebp - 0xb64]
ja 0x4103e2
jb 0x4052bf
mov edx, dword [ebp - 0xb60]
cmp edx, dword [ebp - 0xb68]
ja 0x4103e2
mov eax, dword [ebp - 0x12c]
add eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ebp - 0x64]
mov ecx, dword [ecx]
sub ecx, dword [edx]
cmp eax, ecx
jae 0x405301
movsx edx, byte [ebp - 1]
movsx eax, byte [ebp - 0x36]
add edx, eax
mov ecx, dword [ebp - 0x11c]
mov byte [ecx], dl
lea edx, [ebp - 0xfe8]
push edx
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
mov dword [ebp - 0xd00], eax
imul eax, dword [0x413020], 0x1bff
mov ecx, dword [0x413028]
cmp eax, dword [ecx]
jg 0x40533e
movsx edx, byte [ebp - 0x10]
mov eax, dword [ebp - 0x33c]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 9], dl
mov edx, dword [ebp - 0x188]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x29]
sub eax, ecx
mov edx, dword [ebp - 0x100]
mov byte [edx], al
movsx eax, byte [ebp - 0xe]
mov ecx, dword [ebp - 0x230]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x2bc]
mov byte [ecx], al
mov dl, byte [ebp - 0x19]
mov byte [ebp - 0x58], dl
lea eax, [ebp - 0x36]
mov dword [ebp - 0x398], eax
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 0x12]
cdq
idiv ecx
mov byte [ebp - 0x31], al
mov edx, dword [ebp - 0x120]
mov al, byte [edx]
mov byte [0x413026], al
mov ecx, dword [ebp - 0x1ac]
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0xb70], ecx
mov dword [ebp - 0xb6c], edx
mov eax, dword [ebp - 0xb70]
or eax, dword [ebp - 0xb6c]
je 0x4053a7
jmp 0x4053df
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0x1d0], ecx
lea edx, [ebp - 0x181]
mov dword [ebp - 0x308], edx
movsx eax, byte [ebp - 0x36]
mov ecx, dword [ebp - 0x338]
movsx edx, byte [ecx]
imul eax, edx
mov ecx, dword [ebp - 0x11c]
mov byte [ecx], al
mov dl, byte [ebp - 0x31]
mov byte [ebp - 0x55], dl
jmp 0x405443
mov eax, dword [ebp - 0x2a0]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x31]
add ecx, edx
mov eax, dword [ebp - 0x1b0]
mov byte [eax], cl
mov ecx, dword [ebp - 0x248]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x33c]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x41], dl
movsx edx, byte [0x41300a]
mov eax, dword [ebp - 0x2ac]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x440]
mov byte [eax], dl
mov ecx, dword [ebp - 0x164]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xf8]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x1dc]
mov byte [eax], dl
movsx ecx, byte [ebp - 7]
movsx edx, byte [ebp - 0x14]
add ecx, edx
mov eax, dword [0x413034]
mov byte [eax], cl
mov ecx, dword [ebp - 0x88]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x68]
sub edx, eax
movzx ecx, word [ebp - 0x40]
mov eax, dword [ebp - 0xe0]
movzx eax, word [eax]
add ecx, eax
cmp edx, ecx
jl 0x4103b6
mov ecx, dword [0x413028]
mov edx, dword [ecx]
add edx, 0x48a1
cmp edx, dword [0x413020]
jge 0x4054b7
movsx eax, byte [ebp - 0x15]
movsx ecx, byte [ebp - 0x10]
sar eax, cl
mov ecx, dword [ebp - 0x2a4]
mov byte [ecx], al
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
movsx ecx, byte [0x413026]
xor eax, ecx
mov byte [ebp - 2], al
mov edx, dword [ebp - 0x1d0]
movsx eax, word [edx]
mov ecx, dword [ebp - 0x210]
movsx edx, word [ecx]
and eax, edx
mov ecx, dword [ebp - 0x1a0]
movsx edx, word [ecx]
mov ecx, dword [ebp - 0x27c]
movsx ecx, word [ecx]
shl edx, cl
cmp eax, edx
jge 0x40553e
lea edx, [ebp - 0xd4]
mov dword [ebp - 0x224], edx
lea eax, [ebp - 0x18]
mov dword [ebp - 0x16c], eax
movzx ecx, word [ebp - 0x40]
movzx edx, word [ebp - 0x68]
or ecx, edx
mov word [ebp - 0x108], cx
push 0
push 4
push 4
push 0
push 1
push 0xc0000000
push str.2QsXGxcn70in6uod4e
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0xd04], eax
lea eax, [ebp - 0x1ac]
mov dword [ebp - 0x300], eax
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x240], ecx
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0xc8]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x124]
sub edx, dword [ebp - 0x110]
cmp ecx, edx
ja 0x410388
movsx eax, byte [ebp - 0x38]
movsx ecx, byte [0x413025]
sub eax, ecx
mov edx, dword [ebp - 0x378]
mov byte [edx], al
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xd08], eax
mov eax, dword [ebp - 0x104]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x15]
add ecx, edx
mov byte [ebp - 0x47], cl
lea eax, [ebp - 4]
mov dword [ebp - 0x2d8], eax
mov ecx, dword [ebp - 0x240]
mov dx, word [ecx]
mov word [ebp - 0x134], dx
lea eax, [ebp - 0x48]
mov dword [0x41304c], eax
push 0
push 0x80
push 0
push 0
push 2
push 0xc0000000
push str.gTZJrXooRHteltELLKGBWqCrXJIE
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0xd0c], eax
movsx ecx, byte [ebp - 0x34]
mov edx, dword [ebp - 0x2bc]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x4e], cl
movsx ecx, byte [ebp - 0x23]
mov edx, dword [ebp - 0x220]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x13c]
mov byte [edx], cl
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x204]
mov edx, dword [eax]
add edx, dword [ecx]
mov eax, dword [eax + 4]
adc eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0xac]
sub esi, dword [ecx]
mov edi, dword [ebp - 0xa8]
sbb edi, dword [ecx + 4]
mov dword [ebp - 0xb78], edx
mov dword [ebp - 0xb74], eax
mov dword [ebp - 0xb80], esi
mov dword [ebp - 0xb7c], edi
mov edx, dword [ebp - 0xb78]
cmp edx, dword [ebp - 0xb80]
jne 0x405664
mov eax, dword [ebp - 0xb74]
cmp eax, dword [ebp - 0xb7c]
je 0x410355
movzx ecx, word [ebp - 0x40]
mov dword [ebp - 0x6a4], ecx
cmp dword [ebp - 0x6a4], 0x1a3
je 0x40567c
jmp 0x40568e
movsx edx, byte [ebp - 0xc]
movsx eax, byte [ebp - 0x19]
or edx, eax
mov byte [ebp - 0x7b], dl
jmp 0x410322
lea ecx, [ebp - 0x1a]
mov dword [ebp - 0x380], ecx
movzx edx, word [ebp - 0x28]
mov eax, dword [ebp - 0xe0]
movzx ecx, word [eax]
shl edx, cl
movzx ecx, word [ebp - 0x40]
mov eax, dword [ebp - 0x88]
movzx eax, word [eax]
sub ecx, eax
cmp edx, ecx
jge 0x4056ec
mov ecx, dword [ebp - 0xb0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x10]
add edx, eax
mov ecx, dword [0x413034]
mov byte [ecx], dl
mov edx, dword [ebp - 0x2a4]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x2a0]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x238]
mov byte [ecx], al
movzx edx, word [ebp - 0x30c]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x678], ax
mov eax, dword [ebp - 0x204]
mov ecx, dword [ebp - 0x94]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [eax + 4]
sbb eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x224]
mov esi, dword [ecx]
add esi, dword [ebp - 0xd4]
mov ecx, dword [ecx + 4]
adc ecx, dword [ebp - 0xd0]
mov dword [ebp - 0xb88], edx
mov dword [ebp - 0xb84], eax
mov dword [ebp - 0xb90], esi
mov dword [ebp - 0xb8c], ecx
mov edx, dword [ebp - 0xb84]
cmp edx, dword [ebp - 0xb8c]
jg 0x405793
jl 0x405764
mov eax, dword [ebp - 0xb88]
cmp eax, dword [ebp - 0xb90]
jae 0x405793
movsx ecx, byte [ebp - 1]
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0xe], cl
mov ecx, dword [ebp - 0x210]
movsx edx, word [ecx]
mov eax, dword [ebp - 0x19c]
movsx ecx, word [eax]
add edx, ecx
mov eax, dword [ebp - 0x1bc]
mov word [eax], dx
mov ecx, dword [ebp - 0x2fc]
mov dl, byte [ecx]
mov byte [ebp - 0x4d], dl
lea eax, [ebp - 6]
mov dword [ebp - 0x414], eax
movzx ecx, word [ebp - 0x108]
movzx edx, word [ebp - 0x68]
sub ecx, edx
mov eax, dword [ebp - 0x88]
movzx edx, word [eax]
movzx eax, word [ebp - 0x40]
add edx, eax
cmp ecx, edx
je 0x4057f0
mov ecx, dword [ebp - 0x344]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x75]
xor edx, eax
mov ecx, dword [ebp - 0x308]
mov byte [ecx], dl
movsx edx, byte [ebp - 2]
mov eax, dword [ebp - 0x250]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 0xa], dl
mov eax, dword [ebp - 0xac]
mov edx, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xd4]
call fcn.00410810
mov ecx, dword [ebp - 0x84]
sub ecx, dword [section..data]
mov esi, dword [ebp - 0x80]
sbb esi, dword [0x413004]
mov dword [ebp - 0xb98], eax
mov dword [ebp - 0xb94], edx
mov dword [ebp - 0xba0], ecx
mov dword [ebp - 0xb9c], esi
mov edx, dword [ebp - 0xb94]
cmp edx, dword [ebp - 0xb9c]
jg 0x405895
jl 0x405852
mov eax, dword [ebp - 0xb98]
cmp eax, dword [ebp - 0xba0]
jae 0x405895
movsx ecx, byte [ebp - 2]
mov edx, dword [ebp - 0x1ec]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x274]
mov byte [edx], cl
lea eax, [ebp - 0x750]
push eax
mov ecx, dword [ebp - 0xd10]
push ecx
lea edx, [ebp - 0x614]
push edx
lea eax, [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0xd14]
push ecx
call dword [sym.imp.KERNEL32.dll_ScrollConsoleScreenBufferW]
mov dword [ebp - 0x6ac], eax
lea edx, [ebp - 0x29]
mov dword [0x413050], edx
movsx eax, byte [ebp - 7]
mov ecx, dword [ebp - 0x1d4]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x46], al
mov eax, dword [ebp - 0x1a4]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x74]
mov edx, dword [eax + 4]
adc edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x1a4]
mov dword [eax], ecx
mov dword [eax + 4], edx
movsx ecx, byte [ebp - 0x41]
movsx edx, byte [ebp - 2]
imul ecx, edx
mov byte [ebp - 0x8b], cl
mov al, byte [ebp - 0xc]
mov byte [ebp - 0x54], al
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x494], ecx
mov dword [ebp - 0x320], 0x41300c
mov edx, dword [ebp - 0x540]
sub edx, 0x34c234d8
mov dword [ebp - 0x540], edx
mov eax, dword [ebp - 0x120]
movsx eax, byte [eax]
movsx ecx, byte [ebp - 0x4b]
cdq
idiv ecx
mov byte [ebp - 0x79], al
mov edx, dword [ebp - 0x244]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x8b]
add eax, ecx
mov edx, dword [ebp - 0x1d4]
mov byte [edx], al
mov eax, dword [ebp - 0x16c]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x150]
movzx eax, byte [edx]
add ecx, eax
movzx edx, byte [ebp - 0x18]
movzx eax, byte [ebp - 0xd]
sub edx, eax
cmp ecx, edx
jne 0x405984
movsx ecx, byte [ebp - 0x54]
movsx edx, byte [ebp - 0x11]
or ecx, edx
mov eax, dword [0x413038]
mov byte [eax], cl
mov ecx, dword [ebp - 0xb0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x268]
movsx ecx, byte [eax]
shl edx, cl
mov ecx, dword [ebp - 0xdc]
mov byte [ecx], dl
mov edx, dword [ebp - 0x9c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x268]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x1f8]
movsx edx, byte [ecx]
mov ecx, dword [ebp - 0x2a0]
movsx ecx, byte [ecx]
add edx, ecx
cmp eax, edx
je 0x4059f1
mov edx, dword [ebp - 0x1f8]
mov al, byte [edx]
mov byte [ebp - 0x5a], al
mov ecx, dword [ebp - 0x9c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0xf]
add edx, eax
mov byte [ebp - 0x5e], dl
lea ecx, [ebp - 0x13]
mov dword [ebp - 0x464], ecx
lea edx, [ebp - 0x45]
mov dword [ebp - 0x500], edx
mov eax, dword [ebp - 0x2bc]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 3]
add ecx, edx
mov byte [ebp - 0x4a], cl
lea eax, [ebp - 0x4a]
mov dword [ebp - 0x2f4], eax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0xba8], ecx
mov dword [ebp - 0xba4], edx
cmp dword [ebp - 0xba8], 0x5437
jne 0x405a27
cmp dword [ebp - 0xba4], 0x700000
je 0x405a29
jmp 0x405a53
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x344]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 1], cl
movsx ecx, byte [ebp - 0x17]
movsx edx, byte [ebp - 0x38]
sub ecx, edx
mov eax, dword [0x413038]
mov byte [eax], cl
jmp 0x405a91
movzx ecx, word [ebp - 0x28]
mov edx, dword [ebp - 0x88]
movzx eax, word [edx]
add ecx, eax
mov word [ebp - 0x160], cx
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0x21c], 0x413000
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [ebp - 0xd18], eax
lea edx, [ebp - 0x18]
mov dword [ebp - 0x174], edx
mov eax, dword [ebp - 0x2f4]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x11]
add ecx, edx
mov eax, dword [ebp - 0x250]
movsx edx, byte [eax]
movsx eax, byte [ebp - 0x45]
sub edx, eax
cmp ecx, edx
jl 0x405ad9
call dword [sym.imp.COMDLG32.dll_CommDlgExtendedError]
mov dword [ebp - 0x124], eax
movzx ecx, word [ebp - 0x108]
movzx edx, word [ebp - 0x28]
add ecx, edx
mov word [ebp - 0x68], cx
mov eax, dword [0x413020]
cdq
mov ecx, 0x541
idiv ecx
mov edx, dword [0x413028]
cmp eax, dword [edx]
jg 0x4102f0
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x110]
mov edx, dword [ebp - 0xc8]
mov eax, dword [edx]
mov edx, dword [ebp - 0x10c]
add eax, dword [edx]
cmp ecx, eax
ja 0x405b69
mov eax, dword [0x413028]
mov ecx, dword [eax]
add ecx, 0x6095
cmp ecx, dword [0x413020]
je 0x405b57
lea edx, [ebp - 7]
mov dword [ebp - 0x278], edx
lea eax, [ebp - 0x29]
mov dword [0x413054], eax
mov ecx, dword [ebp - 0x2a4]
movsx eax, byte [ecx]
mov edx, dword [ebp - 0x344]
movsx ecx, byte [edx]
cdq
idiv ecx
mov byte [ebp - 0x45], al
mov dl, byte [ebp - 4]
mov byte [ebp - 0x50], dl
lea eax, [ebp - 1]
mov dword [ebp - 0x3cc], eax
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x3c4], ecx
lea edx, [ebp - 0x41]
mov dword [ebp - 0x450], edx
push 0x411374
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x67c], ax
mov eax, dword [ebp - 0x10c]
mov ecx, dword [ebp - 0xc8]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x124]
add ecx, dword [eax]
cmp edx, ecx
je 0x405bcc
mov edx, dword [ebp - 0xdc]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x10]
add eax, ecx
mov byte [ebp - 0x79], al
movsx edx, byte [ebp - 4]
mov eax, dword [ebp - 0x464]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x138]
mov byte [eax], dl
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ebp - 0x124]
add edx, dword [ecx]
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x10c]
mov eax, dword [eax]
xor eax, dword [ecx]
cmp edx, eax
jne 0x405c53
mov ecx, dword [ebp - 0xe0]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x28]
and edx, eax
movzx eax, word [ebp - 0x68]
movzx ecx, word [ebp - 0x160]
sar eax, cl
cmp edx, eax
jg 0x405c53
mov ecx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x1ac]
mov edx, dword [ebp - 0x1a8]
mov ecx, dword [ecx]
call fcn.004107f0
mov ecx, dword [ebp - 0x298]
mov dword [ecx], eax
mov dword [ecx + 4], edx
lea edx, [ebp - 0x33]
mov dword [ebp - 0x2c8], edx
lea eax, [ebp - 8]
mov dword [ebp - 0x4d8], eax
lea ecx, [ebp - 0xb]
mov dword [0x413058], ecx
lea edx, [ebp - 4]
mov dword [ebp - 0x3f0], edx
mov eax, dword [ebp - 0x22c]
movsx ecx, byte [eax]
movsx edx, byte [0x41300a]
or ecx, edx
mov byte [ebp - 0x118], cl
mov eax, dword [ebp - 0x88]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x28]
sub ecx, edx
movzx eax, word [ebp - 0x160]
movzx edx, word [ebp - 0x108]
sub eax, edx
cmp ecx, eax
jle 0x405cb7
mov eax, dword [ebp - 0x2ac]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 6]
sub ecx, edx
mov eax, dword [ebp - 0x250]
mov byte [eax], cl
mov ecx, dword [ebp - 0x13c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x46]
add edx, eax
mov byte [ebp - 0x47], dl
lea ecx, [ebp - 0x12]
mov dword [ebp - 0x314], ecx
mov edx, dword [ebp - 0x27c]
movsx eax, word [edx]
movsx ecx, word [0x41300c]
cdq
idiv ecx
mov edx, dword [ebp - 0x1d0]
mov word [edx], ax
movzx eax, byte [ebp - 0xd]
mov ecx, dword [ebp - 0x150]
movzx edx, byte [ecx]
imul eax, edx
mov ecx, dword [ebp - 0x174]
movzx edx, byte [ecx]
mov ecx, dword [ebp - 0x16c]
movzx ecx, byte [ecx]
sub edx, ecx
cmp eax, edx
jne 0x405d28
movsx edx, byte [ebp - 3]
movsx eax, byte [ebp - 0x16]
add edx, eax
mov ecx, dword [ebp - 0x2f4]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x46]
movsx eax, byte [ebp - 0x13]
add edx, eax
mov ecx, dword [0x413040]
mov byte [ecx], dl
mov dl, byte [ebp - 0x58]
mov byte [ebp - 0x57], dl
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xc8]
add ecx, dword [edx]
mov eax, dword [ebp - 0x10c]
mov edx, dword [eax]
add edx, dword [ebp - 0xcc]
cmp ecx, edx
je 0x405d71
movsx eax, byte [ebp - 0x10]
mov ecx, dword [ebp - 0x338]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x48], al
movsx eax, byte [ebp - 0xa]
movsx ecx, byte [ebp - 0x5e]
add eax, ecx
mov edx, dword [ebp - 0x2c8]
mov byte [edx], al
mov eax, dword [ebp - 0x378]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x414]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x193], cl
lea ecx, [ebp - 0xe]
mov dword [ebp - 0x3e4], ecx
mov edx, dword [ebp - 0x204]
mov esi, dword [edx]
sub esi, dword [ebp - 0x84]
mov edi, dword [edx + 4]
sbb edi, dword [ebp - 0x80]
mov eax, dword [ebp - 0x224]
mov ecx, dword [ebp - 0x94]
mov edx, dword [ecx + 4]
push edx
mov ecx, dword [ecx]
push ecx
mov edx, dword [eax + 4]
push edx
mov eax, dword [eax]
push eax
call fcn.00410700
mov dword [ebp - 0xbb0], esi
mov dword [ebp - 0xbac], edi
mov dword [ebp - 0xbb8], eax
mov dword [ebp - 0xbb4], edx
mov ecx, dword [ebp - 0xbb0]
cmp ecx, dword [ebp - 0xbb8]
jne 0x405e27
mov edx, dword [ebp - 0xbac]
cmp edx, dword [ebp - 0xbb4]
jne 0x405e27
movsx eax, byte [ebp - 0xc]
movsx ecx, byte [ebp - 0x8b]
add eax, ecx
mov byte [ebp - 0x5a], al
mov edx, dword [ebp - 0x11c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x2a0]
movsx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x450]
mov byte [edx], al
movsx eax, byte [ebp - 0x19]
mov ecx, dword [ebp - 0x158]
movsx edx, byte [ecx]
or eax, edx
mov ecx, dword [ebp - 0x314]
movsx edx, byte [ecx]
movsx ecx, byte [0x413024]
sub edx, ecx
cmp eax, edx
jge 0x405e73
lea edx, [ebp - 0xfe8]
push edx
mov eax, dword [ebp - 0xd1c]
push eax
call dword [sym.imp.KERNEL32.dll_GetThreadIOPendingFlag]
mov dword [ebp - 0x6b0], eax
movsx ecx, byte [ebp - 0x58]
movsx edx, byte [ebp - 0x16]
add ecx, edx
mov byte [ebp - 0x23], cl
movsx eax, word [ebp - 0x30]
movsx ecx, word [ebp - 0x20]
add eax, ecx
mov edx, dword [ebp - 0x1d0]
movsx ecx, word [edx]
movsx edx, word [ebp - 0x134]
sub ecx, edx
cmp eax, ecx
jg 0x405ec4
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x5e]
add ecx, edx
mov eax, dword [0x413034]
mov byte [eax], cl
mov ecx, dword [ebp - 0x130]
movsx edx, word [ecx]
movsx eax, word [ebp - 0xa0]
add edx, eax
mov ecx, dword [ebp - 0x3c4]
mov word [ecx], dx
mov edx, dword [ebp - 0x320]
movsx eax, word [edx]
mov ecx, dword [ebp - 0x1e0]
movsx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x1bc]
movsx edx, word [ecx]
mov ecx, dword [ebp - 0x210]
movsx ecx, word [ecx]
sub edx, ecx
cmp eax, edx
je 0x405f24
lea edx, [ebp - 0x48]
mov dword [ebp - 0x47c], edx
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x15]
add ecx, edx
mov byte [ebp - 7], cl
mov al, byte [ebp - 9]
mov byte [ebp - 0xc1], al
movsx ecx, byte [ebp - 0x17]
movsx edx, byte [ebp - 0x29]
and ecx, edx
mov byte [ebp - 0x8c], cl
mov ecx, dword [section..data]
mov edx, dword [ebp - 0x204]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.00410810
mov ecx, dword [ebp - 0x21c]
mov esi, dword [ebp - 0x224]
mov edi, dword [ecx]
xor edi, dword [esi]
mov ecx, dword [ecx + 4]
xor ecx, dword [esi + 4]
mov dword [ebp - 0xbc0], eax
mov dword [ebp - 0xbbc], edx
mov dword [ebp - 0xbc8], edi
mov dword [ebp - 0xbc4], ecx
mov edx, dword [ebp - 0xbbc]
cmp edx, dword [ebp - 0xbc4]
jg 0x4102c2
jl 0x405f8e
mov eax, dword [ebp - 0xbc0]
cmp eax, dword [ebp - 0xbc8]
jae 0x4102c2
mov ecx, dword [ebp - 0xd4]
sub ecx, dword [ebp - 0xac]
mov edx, dword [ebp - 0xd0]
sbb edx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x21c]
mov esi, dword [ebp - 0x84]
add esi, dword [eax]
mov edi, dword [ebp - 0x80]
adc edi, dword [eax + 4]
mov dword [ebp - 0xbd0], ecx
mov dword [ebp - 0xbcc], edx
mov dword [ebp - 0xbd8], esi
mov dword [ebp - 0xbd4], edi
mov ecx, dword [ebp - 0xbcc]
cmp ecx, dword [ebp - 0xbd4]
jl 0x410297
jg 0x405ff8
mov edx, dword [ebp - 0xbd0]
cmp edx, dword [ebp - 0xbd8]
jb 0x410297
lea eax, [ebp - 2]
mov dword [ebp - 0x394], eax
lea ecx, [ebp - 0x29]
mov dword [ebp - 0x454], ecx
movsx edx, byte [ebp - 0x4a]
mov eax, dword [ebp - 0x154]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x2e4]
movsx ecx, byte [eax]
movsx eax, byte [ebp - 4]
imul ecx, eax
cmp edx, ecx
jge 0x406051
movsx edx, byte [ebp - 0x58]
movsx ecx, byte [ebp - 0x11]
shl edx, cl
mov eax, dword [ebp - 0x104]
mov byte [eax], dl
mov ecx, dword [ebp - 0x13c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0xc]
or edx, eax
mov byte [ebp - 0x33], dl
mov ecx, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1ac]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x1a8]
sbb eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x23c]
mov esi, dword [ebp - 0x74]
add esi, dword [ecx]
mov edi, dword [ebp - 0x70]
adc edi, dword [ecx + 4]
mov dword [ebp - 0xbe0], edx
mov dword [ebp - 0xbdc], eax
mov dword [ebp - 0xbe8], esi
mov dword [ebp - 0xbe4], edi
mov edx, dword [ebp - 0xbdc]
cmp edx, dword [ebp - 0xbe4]
ja 0x410259
jb 0x4060b7
mov eax, dword [ebp - 0xbe0]
cmp eax, dword [ebp - 0xbe8]
ja 0x410259
mov ecx, dword [ebp - 0x150]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x174]
movzx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x22], dl
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0x12c], edx
lea eax, [ebp - 0x160]
mov dword [0x41305c], eax
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x2c4], ecx
mov edx, dword [ebp - 0x21c]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
mov edx, dword [ebp - 0xd0]
push edx
mov eax, dword [ebp - 0xd4]
push eax
call fcn.00410700
mov ecx, dword [ebp - 0x94]
mov esi, dword [ebp - 0x204]
mov edi, dword [ecx]
sub edi, dword [esi]
mov ecx, dword [ecx + 4]
sbb ecx, dword [esi + 4]
mov dword [ebp - 0xbf0], eax
mov dword [ebp - 0xbec], edx
mov dword [ebp - 0xbf8], edi
mov dword [ebp - 0xbf4], ecx
mov edx, dword [ebp - 0xbec]
cmp edx, dword [ebp - 0xbf4]
jg 0x40618d
jl 0x40615a
mov edx, dword [ebp - 0x64]
mov eax, dword [edx]
sub eax, dword [ebp - 0x110]
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x10c]
add edx, dword [ecx]
cmp eax, edx
jb 0x4061ff
mov eax, dword [ebp - 0x21c]
mov ecx, dword [ebp - 0x94]
mov edx, dword [eax]
add edx, dword [ecx]
mov eax, dword [eax + 4]
adc eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x224]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0xe0]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x88]
movzx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0xe0]
mov word [ecx], ax
movsx edx, byte [ebp - 3]
movsx eax, byte [ebp - 7]
add edx, eax
mov ecx, dword [ebp - 0x264]
mov byte [ecx], dl
mov edx, dword [ebp - 0x1f8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x9c]
movsx edx, byte [ecx]
add eax, edx
mov byte [0x41300a], al
mov eax, dword [ebp - 0x2d0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x128]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x15c]
mov byte [edx], cl
mov eax, dword [ebp - 0x3a0]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xc]
add ecx, edx
mov byte [ebp - 5], cl
mov eax, dword [ebp - 0x1d0]
movsx ecx, word [eax]
movsx edx, word [ebp - 0xa0]
add ecx, edx
mov eax, dword [ebp - 0x29c]
mov word [eax], cx
movsx ecx, byte [ebp - 8]
mov edx, dword [ebp - 0x244]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x1b8]
mov byte [edx], cl
mov eax, dword [ebp - 0x308]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x188]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x47], cl
mov ecx, dword [ebp - 0x2d4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x338]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x120]
mov byte [eax], dl
mov ecx, dword [ebp - 0x230]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x2a4]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x100]
mov byte [eax], dl
mov ecx, dword [ebp - 0x208]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x17]
add edx, eax
mov ecx, dword [ebp - 0xd8]
mov byte [ecx], dl
mov edx, dword [ebp - 0x230]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x138]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x268]
mov byte [ecx], al
movsx edx, byte [ebp - 0xf]
mov eax, dword [ebp - 0x22c]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 7], dl
mov edx, dword [ebp - 0x2a0]
movsx eax, byte [edx]
movsx ecx, byte [0x41300b]
add eax, ecx
mov byte [ebp - 0x35], al
movsx edx, byte [ebp - 8]
mov eax, dword [ebp - 0x340]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x1ec]
mov byte [eax], dl
mov ecx, dword [ebp - 0x26c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x104]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [0x413048]
mov byte [eax], dl
movsx ecx, byte [ebp - 0x48]
mov edx, dword [ebp - 0x168]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x29], cl
mov ecx, dword [ebp - 0x2ac]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x23]
add edx, eax
mov ecx, dword [ebp - 0x2a0]
mov byte [ecx], dl
mov edx, dword [ebp - 0x98]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x17]
sub eax, ecx
mov byte [ebp - 1], al
movsx edx, byte [ebp - 2]
mov eax, dword [ebp - 0x2a4]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x13c]
mov byte [eax], dl
movsx edx, byte [ebp - 0x17]
movsx ecx, byte [ebp - 0x34]
sar edx, cl
mov byte [0x413024], dl
push 0x9f
push 0
mov eax, dword [ebp - 0xe58]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstChangeNotificationW]
mov dword [ebp - 0x614], eax
movsx ecx, byte [ebp - 0x36]
movsx edx, byte [ebp - 3]
add ecx, edx
mov eax, dword [ebp - 0x33c]
mov byte [eax], cl
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ebp - 0xcc]
or edx, dword [ecx]
mov dword [ebp - 0x110], edx
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x110]
mov edx, dword [ebp - 0xc8]
mov dword [edx], ecx
movsx eax, byte [ebp - 0x39]
movsx ecx, byte [ebp - 0x38]
add eax, ecx
mov byte [ebp - 2], al
mov edx, dword [ebp - 0x158]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x16]
sub eax, ecx
mov edx, dword [ebp - 0x15c]
mov byte [edx], al
mov eax, dword [ebp - 0x1bc]
movsx ecx, word [eax]
movsx edx, word [ebp - 0xfc]
add ecx, edx
mov eax, dword [ebp - 0x1e0]
mov word [eax], cx
movsx ecx, byte [ebp - 0x1a]
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
add ecx, eax
mov byte [0x413024], cl
lea ecx, [ebp - 0x748]
push ecx
mov edx, dword [ebp - 0x614]
push edx
call dword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
mov dword [ebp - 0x74c], eax
mov eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xf]
add ecx, edx
mov byte [ebp - 8], cl
lea eax, [ebp - 0x10b8]
push eax
call dword [sym.imp.COMDLG32.dll_ChooseFontW]
mov dword [ebp - 0x750], eax
mov ecx, dword [ebp - 0x244]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x10]
sub edx, eax
mov byte [ebp - 0x16], dl
movsx ecx, byte [ebp - 0xf]
mov edx, dword [ebp - 0x230]
movsx eax, byte [edx]
or ecx, eax
mov edx, dword [ebp - 0xb4]
mov byte [edx], cl
movsx eax, byte [ebp - 4]
mov ecx, dword [ebp - 0x2a4]
movsx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x1d4]
mov byte [edx], al
jmp 0x41059e
mov eax, dword [ebp - 0x15c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x39], cl
mov ecx, dword [ebp - 0x230]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x340]
movsx ecx, byte [eax]
xor edx, ecx
mov eax, dword [ebp - 0x138]
mov byte [eax], dl
jmp 0x4105e5
mov ecx, dword [ebp - 0x1dc]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x21]
and edx, eax
mov byte [ebp - 6], dl
movsx ecx, byte [ebp - 0x13]
mov edx, dword [ebp - 0xb0]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x1ec]
mov byte [edx], cl
movsx eax, byte [ebp - 9]
movsx ecx, byte [ebp - 0x11]
sar eax, cl
mov ecx, dword [ebp - 0xf8]
mov byte [ecx], al
movsx edx, byte [ebp - 0xa]
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0xb4]
mov byte [eax], dl
movsx ecx, byte [ebp - 8]
movsx edx, byte [ebp - 0xa]
sub ecx, edx
mov byte [ebp - 2], cl
mov eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x154]
movsx eax, byte [edx]
and ecx, eax
mov edx, dword [ebp - 0x100]
mov byte [edx], cl
movsx eax, byte [ebp - 9]
mov ecx, dword [ebp - 0x244]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x11c]
mov byte [ecx], al
movsx edx, byte [ebp - 1]
mov eax, dword [ebp - 0xf8]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 2], dl
movsx ecx, byte [ebp - 5]
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0xf8]
mov byte [edx], cl
movsx eax, byte [ebp - 7]
mov ecx, dword [ebp - 0x98]
movsx ecx, byte [ecx]
shl eax, cl
mov byte [ebp - 1], al
movsx edx, byte [ebp - 3]
mov eax, dword [ebp - 0x9c]
movsx ecx, byte [eax]
or edx, ecx
mov eax, dword [ebp - 0xd8]
mov byte [eax], dl
movsx ecx, byte [ebp - 2]
movsx edx, byte [ebp - 3]
add ecx, edx
mov byte [ebp - 1], cl
movsx eax, byte [ebp - 2]
mov ecx, dword [ebp - 0x9c]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x98]
mov byte [ecx], al
movsx edx, byte [ebp - 1]
movsx eax, byte [ebp - 3]
sub edx, eax
mov ecx, dword [ebp - 0x128]
mov byte [ecx], dl
push 0x26
mov edx, dword [ebp - 0xe60]
push edx
mov eax, dword [ebp - 0x754]
push eax
call dword [sym.imp.KERNEL32.dll_GetLongPathNameW]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x48c]
pop edi
pop esi
mov esp, ebp
pop ebp
ret