Function at 0x10072340
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ae560
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x2c30
call fcn.100a26e0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x288c], 0xa27314e4
mov byte [ebp - 0x14], 0x2a
mov eax, dword [0x100d3318]
mov dword [ebp - 0x48], eax
xor ecx, ecx
mov dword [ebp - 0x68], 0x1e27e312
mov dword [ebp - 0x64], ecx
xor edx, edx
mov dword [ebp - 0x38], 0x3d489e04
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x3c], 0x22
mov eax, 0x829c
mov word [ebp - 0x24], ax
xor ecx, ecx
mov dword [ebp - 0x50], 0xec
mov dword [ebp - 0x4c], ecx
mov edx, 0xdb31d
mov dword [ebp - 0x60], 0xfdfec062
mov dword [ebp - 0x5c], edx
movsx ax, byte [str.OReserved.PlatformS]
mov word [ebp - 0x28], ax
mov ecx, dword [0x100d32e0]
mov dword [ebp - 0x88], ecx
mov edx, 0xc1c5
mov word [ebp - 0x2c], dx
xor eax, eax
mov dword [ebp - 0x78], 0xca00
mov dword [ebp - 0x74], eax
mov cl, byte [0x100d32e0]
mov byte [ebp - 0x11], cl
mov byte [ebp - 0x12], 0x17
mov edx, 0xf991
mov word [ebp - 0x30], dx
mov eax, dword [0x100d32d8]
mov ecx, dword [0x100d32dc]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], ecx
mov dx, word [0x100d32f0]
mov word [ebp - 0x20], dx
mov eax, dword [0x100d3308]
mov ecx, dword [0x100d330c]
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], ecx
mov dx, word [0x100d32cc]
mov word [ebp - 0x1c], dx
mov al, byte [0x100d32f4]
mov byte [ebp - 0x13], al
movsx eax, byte [0x100d31ef]
cdq
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
movsx eax, word [0x100d32bc]
cdq
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
xor ecx, ecx
mov dword [ebp - 0x70], 0xe3e2da46
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x7c], 0xe5e42b6d
mov edx, dword [0x100d32ec]
mov byte [ebp - 0x15], dl
mov eax, 0xffffcbfe
mov word [ebp - 0x1614], ax
mov dword [ebp - 0x2888], 0xf0aa1a12
mov dword [ebp - 0x2884], 0x87
movzx ecx, word [0x100d3304]
mov dword [ebp - 0x2880], ecx
mov dword [ebp - 0x287c], 0x7a8c2a09
xor edx, edx
mov dword [ebp - 0x29dc], 8
mov dword [ebp - 0x29d8], edx
movsx eax, word [0x100d32f0]
mov dword [ebp - 0x2878], eax
mov byte [ebp - 0x249], 0xbd
xor ecx, ecx
mov dword [ebp - 0x29e4], 0x88b2
mov dword [ebp - 0x29e0], ecx
mov byte [ebp - 0x2f5], 0xa4
xor edx, edx
mov dword [ebp - 0x29ec], 0x917f9afc
mov dword [ebp - 0x29e8], edx
mov al, byte [0x100d32bc]
mov byte [ebp - 0x2f6], al
xor ecx, ecx
mov dword [ebp - 0x29f4], 0x31ad130c
mov dword [ebp - 0x29f0], ecx
mov dl, byte [0x100d32d0]
mov byte [ebp - 0x2f7], dl
mov eax, 0xffffc073
mov word [ebp - 0x1618], ax
mov dword [ebp - 0x2874], 0xf92
mov cl, byte [0x100d32bc]
mov byte [ebp - 0x2f8], cl
mov dl, byte [0x100d3320]
mov byte [ebp - 0x2f9], dl
push str.comdlg32
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x100d3328], eax
cmp dword [0x100d3328], 0
je 0x1007258a
mov dword [ebp - 0xdd8], 1
jmp 0x10072594
mov dword [ebp - 0xdd8], 0
cmp dword [0x100d3328], 0x22
je 0x100725a9
mov dword [ebp - 0xddc], 1
jmp 0x100725b3
mov dword [ebp - 0xddc], 0
mov eax, dword [ebp - 0xdd8]
cmp eax, dword [ebp - 0xddc]
jge 0x10072761
push 0xa0
push 0
movzx ecx, byte [0x100d32f0]
push ecx
push 0
push 0
push 0
call fcn.1009e190
add esp, 0x18
movzx dx, al
mov word [ebp - 0x28], dx
movsx eax, word [ebp - 0x28]
test eax, eax
jg 0x1007275c
mov dword [ebp - 4], 0
movsx ecx, byte [0x100d323e]
add ecx, 0x37ce6ddd
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x84]
add edx, 0x35
mov eax, dword [ebp - 0x80]
adc eax, 0
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], eax
movsx eax, byte [0x100d3266]
cdq
add eax, dword [0x100d3330]
mov byte [0x100d3266], al
mov ecx, 0x629f
mov word [ebp - 0x30], cx
mov byte [0x100d3217], 0x87
mov eax, dword [ebp - 0x48]
cdq
mov ecx, eax
mov esi, edx
movzx edx, word [ebp - 0x2c]
imul eax, edx, 0xd3
cdq
mov edi, dword [ebp - 0x78]
mov ebx, dword [ebp - 0x74]
add edi, dword [ebp - 0x84]
adc ebx, dword [ebp - 0x80]
add edi, eax
adc ebx, edx
push esi
push ecx
push ebx
push edi
call fcn.100a25b0
mov dword [0x100d32e0], eax
mov dword [0x100d32e4], edx
jmp 0x1007274c
mov dword [ebp - 4], 0xffffffff
jmp 0x1007275c
jmp 0x100728b3
movsx eax, byte [0x100d3217]
test eax, eax
jne 0x100728b3
movzx eax, byte [ebp - 0x11]
cdq
mov dword [ebp - 0x16b8], eax
mov dword [ebp - 0x16b4], edx
mov ecx, dword [ebp - 0x68]
cmp ecx, dword [ebp - 0x16b8]
jne 0x1007279b
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x16b4]
je 0x100728b3
cmp dword [ebp - 0x48], 0
jne 0x100727ad
mov dword [ebp - 0xde8], 1
jmp 0x100727b7
mov dword [ebp - 0xde8], 0
mov eax, dword [ebp - 0x90]
or eax, dword [ebp - 0x8c]
jne 0x100727d1
mov dword [ebp - 0xde0], 1
jmp 0x100727db
mov dword [ebp - 0xde0], 0
mov ecx, dword [ebp - 0xde0]
add ecx, 0xf4b1
jne 0x100727f5
mov dword [ebp - 0xde4], 1
jmp 0x100727ff
mov dword [ebp - 0xde4], 0
movsx edx, byte [0x100d323e]
mov eax, edx
imul eax, dword [0x100d32c8]
sub eax, dword [ebp - 0xde4]
cdq
mov ecx, dword [ebp - 0x3c]
xor ecx, dword [ebp - 0xde8]
xor esi, esi
sub ecx, dword [0x100d32c0]
sbb esi, dword [0x100d32c4]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov byte [0x100d323f], al
movzx edx, word [0x100d3304]
not edx
xor edx, 0xa553
movzx eax, byte [ebp - 0x15]
movzx ecx, byte [ebp - 0x15]
imul ecx, eax
not ecx
sub ecx, edx
movzx edx, byte [0x100d323f]
movzx eax, word [ebp - 0x24]
xor eax, edx
sub eax, ecx
mov byte [0x100d323e], al
mov ecx, dword [0x10339c08]
mov dword [ebp - 0x3c], ecx
xor edx, edx
mov dword [ebp - 0x90], 0xa7e5
mov dword [ebp - 0x8c], edx
mov eax, dword [0x100d32f8]
mov ecx, dword [0x100d32fc]
mov dword [ebp - 0x2870], ecx
add eax, 0xa981fc2
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
add edx, dword [ebp - 0x70]
adc eax, dword [ebp - 0x6c]
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], eax
mov ecx, dword [0x10339c08]
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x30c], 0
jmp 0x100728da
mov edx, dword [ebp - 0x30c]
add edx, 2
mov dword [ebp - 0x30c], edx
cmp dword [ebp - 0x30c], 0x2fb
jge 0x10072935
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0xdec], eax
cmp dword [ebp - 0xdec], 0
je 0x10072921
mov eax, dword [ebp - 0xdec]
push eax
call dword [sym.imp.USER32.dll_GetMenu]
mov dword [ebp - 0x161c], eax
mov ecx, dword [ebp - 0x161c]
push ecx
call dword [sym.imp.USER32.dll_DestroyMenu]
mov dword [ebp - 0x286c], eax
mov edx, dword [ebp - 0x44]
add edx, 1
mov eax, dword [ebp - 0x40]
adc eax, 0
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], eax
jmp 0x100728cb
mov ecx, dword [ebp - 0x168]
add ecx, 0x419
mov dword [ebp - 0x2868], ecx
cmp dword [0x100d32ec], 0
jne 0x10072964
xor edx, edx
mov dword [ebp - 0x1524], 1
mov dword [ebp - 0x1520], edx
jmp 0x1007296f
xorps xmm0, xmm0
movlpd qword [ebp - 0x1524], xmm0
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x16c0], eax
mov dword [ebp - 0x16bc], ecx
mov edx, dword [ebp - 0x16bc]
cmp edx, dword [ebp - 0x1520]
jl 0x100729ab
jg 0x1007299f
mov eax, dword [ebp - 0x16c0]
cmp eax, dword [ebp - 0x1524]
jbe 0x100729ab
mov dword [ebp - 0xdf0], 1
jmp 0x100729b5
mov dword [ebp - 0xdf0], 0
movsx ecx, word [0x100d32f0]
not ecx
cmp dword [ebp - 0xdf0], ecx
jl 0x100729d2
mov dword [ebp - 0xdf4], 1
jmp 0x100729dc
mov dword [ebp - 0xdf4], 0
mov edx, dword [ebp - 0x48]
cmp edx, dword [0x100d32ec]
jae 0x100729fb
xor eax, eax
mov dword [ebp - 0x152c], 1
mov dword [ebp - 0x1528], eax
jmp 0x10072a06
xorps xmm0, xmm0
movlpd qword [ebp - 0x152c], xmm0
mov ecx, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
xor ecx, dword [ebp - 0x84]
xor edx, dword [ebp - 0x80]
mov dword [ebp - 0x16c8], ecx
mov dword [ebp - 0x16c4], edx
mov eax, dword [ebp - 0x1528]
cmp eax, dword [ebp - 0x16c4]
ja 0x10072a51
jb 0x10072a45
mov ecx, dword [ebp - 0x152c]
cmp ecx, dword [ebp - 0x16c8]
ja 0x10072a51
mov dword [ebp - 0xdf8], 1
jmp 0x10072a5b
mov dword [ebp - 0xdf8], 0
mov edx, dword [ebp - 0xdf4]
cmp edx, dword [ebp - 0xdf8]
jl 0x10072a75
mov dword [ebp - 0xdfc], 1
jmp 0x10072a7f
mov dword [ebp - 0xdfc], 0
mov eax, dword [ebp - 0xdfc]
not eax
test eax, eax
je 0x10072b5c
mov dword [ebp - 0x310], 0x41
jmp 0x10072aaa
mov ecx, dword [ebp - 0x310]
sub ecx, 1
mov dword [ebp - 0x310], ecx
cmp dword [ebp - 0x310], 0
jle 0x10072b5a
mov edx, 0x97963
mov dword [ebp - 0x78], 0x52f6c816
mov dword [ebp - 0x74], edx
movzx eax, byte [ebp - 0x15]
test eax, eax
jne 0x10072ada
mov dword [ebp - 0xe00], 1
jmp 0x10072ae4
mov dword [ebp - 0xe00], 0
movsx ecx, byte [str.OReserved.PlatformS]
movsx edx, word [0x100d32bc]
imul edx, ecx
movzx eax, word [0x100d32d0]
xor eax, dword [ebp - 0xe00]
not eax
add eax, edx
mov word [0x100d32f4], ax
mov eax, dword [ebp - 0x7c]
add eax, 0x372
cdq
mov dword [0x100d32f8], eax
mov dword [0x100d32fc], edx
movsx ecx, byte [ebp - 0x14]
mov dword [0x100d32c8], ecx
movsx eax, word [ebp - 0x1c]
cdq
sub eax, 0x14d774b
sbb edx, 0x9d8fc
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
add edx, 1
adc eax, 0
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], eax
jmp 0x10072a9b
jmp 0x10072ba9
movsx ecx, word [ebp - 0x1c]
test ecx, ecx
je 0x10072ba9
movzx edx, byte [ebp - 0x11]
mov eax, 4
imul ecx, eax, 0xdc96
mov dword [ecx + 0x104c4c80], edx
mov eax, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
mov cl, 4
call fcn.100a26c0
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
mov edx, 8
mov word [0x100d32cc], dx
xor eax, eax
mov dword [ebp - 0x78], 0x6287
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x168]
add ecx, 0x15a
mov dword [ebp - 0x1650], ecx
cmp dword [ebp - 0x88], 0
je 0x10072d5e
movsx edx, byte [str.OReserved.PlatformS]
test edx, edx
jne 0x10072bdf
mov eax, dword [ebp - 0x68]
or eax, dword [ebp - 0x64]
je 0x10072cca
mov ecx, dword [ebp - 0x68]
sub ecx, 0xd3905bde
mov dword [ebp - 0x88], ecx
movsx eax, byte [0x100d3217]
cdq
push 0xe4c25
push 0xa9c62c81
push edx
push eax
call fcn.100a25b0
mov byte [0x100d31ef], al
movzx edx, byte [0x100d31c6]
test edx, edx
jne 0x10072c23
mov dword [ebp - 0xe04], 1
jmp 0x10072c2d
mov dword [ebp - 0xe04], 0
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x2864], edx
movzx eax, word [ebp - 0x24]
mov edx, dword [ebp - 0xe04]
sub edx, eax
mov eax, edx
cdq
mov esi, eax
sub esi, ecx
movzx eax, byte [ebp - 0x11]
cdq
and eax, esi
mov byte [0x100d323e], al
movzx eax, word [ebp - 0x30]
movzx ecx, byte [ebp - 0x12]
xor ecx, eax
jne 0x10072c70
mov dword [ebp - 0xe08], 1
jmp 0x10072c7a
mov dword [ebp - 0xe08], 0
movsx eax, byte [0x100d31ef]
add eax, dword [ebp - 0xe08]
cdq
mov dword [0x100d32c0], eax
mov dword [0x100d32c4], edx
movsx edx, word [0x100d32f0]
add edx, 0x17701ddd
xor eax, eax
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x8c], eax
movzx eax, byte [ebp - 0x15]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x84]
movzx eax, byte [ebp - 0x15]
cdq
add eax, ecx
mov byte [ebp - 0x15], al
jmp 0x10072d5e
movsx edx, word [0x100d3338]
test edx, edx
je 0x10072d5e
movsx eax, byte [0x10339c0c]
movzx ecx, byte [0x100d31c6]
imul ecx, eax
movzx edx, byte [0x100d31c6]
add edx, ecx
mov byte [0x100d31c6], dl
mov eax, dword [0x100d32ec]
xor ecx, ecx
and eax, dword [ebp - 0x44]
and ecx, dword [ebp - 0x40]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], ecx
movzx edx, byte [0x100d31c6]
movzx eax, word [0x100d3310]
sub eax, edx
mov word [0x100d3310], ax
movsx ecx, byte [0x100d31c7]
test ecx, ecx
je 0x10072d40
movzx eax, byte [ebp - 0x12]
cdq
mov dword [ebp - 0x1534], eax
mov dword [ebp - 0x1530], edx
jmp 0x10072d52
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x1534], edx
mov dword [ebp - 0x1530], eax
mov ecx, dword [ebp - 0x1534]
mov dword [0x100d32ec], ecx
mov edx, dword [ebp - 0x168]
add edx, 0x441
mov dword [ebp - 0x1654], edx
push 0
push 0xdb
movsx ax, byte [0x10339c0c]
movzx ecx, ax
push ecx
call fcn.1009fde0
add esp, 0xc
movzx edx, ax
mov dword [ebp - 0x88], edx
cmp dword [ebp - 0x88], 0
jne 0x10072da9
mov dword [ebp - 0xedc], 1
jmp 0x10072db3
mov dword [ebp - 0xedc], 0
cmp dword [ebp - 0x88], 0x49
jne 0x10072dc8
mov dword [ebp - 0x338], 1
jmp 0x10072dd2
mov dword [ebp - 0x338], 0
mov eax, dword [ebp - 0xedc]
cmp eax, dword [ebp - 0x338]
je 0x10072ebf
mov ecx, dword [0x100d3308]
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov dword [0x100d32e8], eax
cmp dword [0x100d32e8], 0
jbe 0x10072e14
jmp 0x10072e0f
jmp 0x10072ebf
mov edx, 0x9665
test edx, edx
je 0x10072ebf
mov eax, dword [0x100d32e8]
mov word [0x100d32f0], ax
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
push 0
push 0x4171
push edx
push ecx
call fcn.100a25b0
mov ecx, eax
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x8c]
call fcn.100a25f0
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
movzx edx, word [0x100d32cc]
imul eax, edx, 0x36
mov word [ebp - 0x24], ax
movsx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
and ecx, eax
and esi, edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], esi
movzx edx, word [0x100d3304]
test edx, edx
jne 0x10072ea8
mov dword [ebp - 0x33c], 1
jmp 0x10072eb2
mov dword [ebp - 0x33c], 0
imul eax, dword [ebp - 0x33c], 0x4521d9a6
mov dword [ebp - 0x7c], eax
mov ecx, dword [0x10339c08]
mov dword [ebp - 0x16c], ecx
movsx edx, word [0x100d32f4]
add edx, 0x6214
mov byte [ebp - 0x13], dl
mov al, byte [0x10339c08]
mov byte [0x100d3216], al
mov ecx, dword [ebp - 0x7c]
sar ecx, 5
mov word [0x100d32bc], cx
movzx edx, word [0x100d3304]
movzx eax, word [0x100d32d0]
imul eax, edx
movzx ecx, word [0x100d32d0]
add ecx, eax
mov word [0x100d32d0], cx
movzx eax, byte [ebp - 0x15]
cdq
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
and edx, ecx
and eax, esi
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x16c]
add ecx, 0x70
mov dword [ebp - 0x5dc], ecx
movsx eax, byte [0x100d323e]
cdq
mov dword [ebp - 0x16d0], eax
mov dword [ebp - 0x16cc], edx
mov edx, dword [ebp - 0x80]
cmp edx, dword [ebp - 0x16cc]
jl 0x10072fee
jg 0x10072f74
mov eax, dword [ebp - 0x84]
cmp eax, dword [ebp - 0x16d0]
jbe 0x10072fee
mov ecx, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
push 0
push 0x9531
push edx
push ecx
call fcn.100a25b0
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x34]
mov ecx, dword [0x100d32e0]
sub ecx, dword [ebp - 0x38]
mov edx, dword [0x100d32e4]
sbb edx, eax
add ecx, dword [0x100d32e0]
adc edx, dword [0x100d32e4]
mov dword [0x100d32e0], ecx
mov dword [0x100d32e4], edx
movzx eax, word [ebp - 0x20]
imul ecx, eax, 0xc7
mov dword [0x100d3300], ecx
movsx edx, word [0x100d32bc]
imul eax, edx, 0xabaf
mov dword [ebp - 0x48], eax
mov ecx, dword [0x100d32d8]
mov dword [0x100d32e8], ecx
jmp 0x10073192
movzx edx, word [ebp - 0x24]
cmp edx, 0xf2eb6aaf
jae 0x1007309f
movzx eax, word [0x100d3304]
cdq
mov ecx, eax
sub ecx, 0x75c29794
movzx eax, byte [ebp - 0x12]
cdq
xor eax, ecx
mov byte [ebp - 0x12], al
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, 8
imul ecx, ecx, 0x8e
mov dword [ecx + 0x10692318], eax
mov dword [ecx + 0x1069231c], edx
movsx edx, byte [0x100d3266]
sub edx, 0x21bba928
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x84]
add eax, 0xc17859ab
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x84]
sub ecx, 0xb5b7ffbe
mov edx, dword [ebp - 0x80]
sbb edx, 0
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x8c], edx
movsx eax, byte [0x100d31ef]
cdq
push edx
push eax
mov eax, dword [0x100d3334]
push eax
mov ecx, dword [0x100d3330]
push ecx
call fcn.100a25b0
mov dword [0x100d3330], eax
mov dword [0x100d3334], edx
jmp 0x10073192
movsx edx, word [ebp - 0x28]
movsx eax, word [0x100d32f4]
not eax
cmp eax, edx
jg 0x1007315a
movsx eax, byte [0x100d31c7]
cdq
mov ecx, dword [ebp - 0x90]
sub ecx, eax
mov esi, dword [ebp - 0x8c]
sbb esi, edx
movzx eax, word [0x100d3304]
and eax, dword [ebp - 0x88]
cdq
sub eax, ecx
sbb edx, esi
mov ecx, dword [0x100d32d8]
xor ecx, 0x6c95620c
mov esi, dword [0x100d32dc]
xor esi, 0xfff81a59
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov byte [0x100d3216], al
movzx eax, word [ebp - 0x2c]
add eax, 0x4f20866e
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
movsx edx, word [ebp - 0x28]
and edx, 0xc8
mov byte [0x100d3217], dl
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x2860], edx
movzx eax, byte [ebp - 0x12]
cdq
add eax, ecx
mov byte [ebp - 0x12], al
movsx eax, word [ebp - 0x1c]
sub eax, dword [ebp - 0x88]
mov word [ebp - 0x1c], ax
movzx ecx, word [0x100d32d0]
sub ecx, 0xf8
mov dword [ebp - 0x48], ecx
jmp 0x10073192
movsx edx, byte [0x100d3217]
cmp edx, 0xb7e2
jge 0x10073192
movsx eax, word [0x100d3338]
xor eax, 0x38bd592a
mov dword [0x100d32c8], eax
mov ecx, 0x2843
mov word [ebp - 0x30], cx
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x16c]
add ecx, 0x1a2
mov dword [ebp - 0x5e0], ecx
push 0x19
push 0
movzx edx, word [ebp - 0x1c]
push edx
call fcn.1009fde0
add esp, 0xc
movzx eax, ax
cdq
mov dword [0x100d3330], eax
mov dword [0x100d3334], edx
cmp dword [0x100d3334], 0
jl 0x100731e4
jg 0x100731d8
cmp dword [0x100d3330], 0
jbe 0x100731e4
mov dword [ebp - 0x340], 1
jmp 0x100731ee
mov dword [ebp - 0x340], 0
cmp dword [0x100d3334], 0
jl 0x1007320e
jg 0x10073202
cmp dword [0x100d3330], 0x1a
jbe 0x1007320e
mov dword [ebp - 0x344], 1
jmp 0x10073218
mov dword [ebp - 0x344], 0
mov eax, dword [ebp - 0x340]
cmp eax, dword [ebp - 0x344]
jle 0x100732ce
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x285c], edx
sub ecx, 0xb4b2
mov word [0x100d32f4], cx
movzx eax, byte [0x100d31c6]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [0x100d3320]
adc esi, dword [0x100d3324]
movzx eax, byte [0x100d31c6]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov byte [0x100d31c6], al
mov edx, dword [ebp - 0x90]
sub edx, 0xc0ba4f6
mov eax, dword [ebp - 0x8c]
sbb eax, 0x9a13f
mov dword [0x100d32f8], edx
mov dword [0x100d32fc], eax
mov ecx, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
sub ecx, 1
sbb edx, 0
mov dword [0x100d32f8], ecx
mov dword [0x100d32fc], edx
mov eax, 8
imul ecx, eax, 0x5cc
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov dword [ecx + 0x104061c8], edx
mov dword [ecx + 0x104061cc], eax
mov ecx, dword [ebp - 0x16c]
add ecx, 0x1b6
mov dword [ebp - 0x5e4], ecx
mov edx, dword [0x100d32e0]
sub edx, 0xf41a
mov dword [ebp - 0x48], edx
mov eax, dword [0x100d32fc]
mov ecx, dword [ebp - 0x70]
sub ecx, dword [0x100d32f8]
mov edx, dword [ebp - 0x6c]
sbb edx, eax
xor ecx, dword [ebp - 0x70]
xor edx, dword [ebp - 0x6c]
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x6c], edx
mov byte [0x100d31c7], 0xb1
movsx eax, byte [0x10339c0c]
imul ecx, eax, 0x84
mov byte [0x100d31c6], cl
movzx eax, word [ebp - 0x24]
cdq
add eax, 0x76c91dbf
adc edx, 0x47807
mov dword [0x100d32c0], eax
mov dword [0x100d32c4], edx
mov edx, dword [0x10339c08]
mov dword [ebp - 0x170], edx
movsx eax, byte [0x100d3216]
movzx ecx, word [ebp - 0x20]
add eax, ecx
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x84]
adc esi, dword [ebp - 0x80]
mov eax, dword [0x100d32c8]
cdq
mov edi, eax
mov ebx, edx
add edi, 0xb9bc42a8
adc ebx, 0x71c80
movsx edx, byte [str.OReserved.PlatformS]
mov eax, dword [0x100d32c8]
not eax
imul eax, edx
cdq
add eax, edi
adc edx, ebx
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov byte [0x100d31ef], al
movzx eax, word [ebp - 0x2c]
cdq
mov ecx, 8
imul ecx, ecx, 0x34
mov dword [ecx + 0x105c3c80], eax
mov dword [ecx + 0x105c3c84], edx
movzx edx, word [ebp - 0x20]
xor edx, 0x6e844f6c
mov word [ebp - 0x1c], dx
mov eax, dword [ebp - 0x3c]
mov byte [str.OReserved.PlatformS], al
mov cx, word [0x100d32d8]
mov word [ebp - 0x1c], cx
movzx eax, byte [ebp - 0x15]
cdq
push 0xd4e38
push 0x47873fa1
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov edx, dword [ebp - 0x170]
add edx, 0x18a
mov dword [ebp - 0x5f4], edx
mov eax, 1
imul ecx, eax, 0xc
movzx eax, byte [ecx + 0x1060b544]
cdq
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
movzx edx, word [0x100d32d0]
movsx eax, byte [0x100d3266]
imul eax, edx
not eax
cdq
mov dword [0x100d32e0], eax
mov dword [0x100d32e4], edx
movsx eax, byte [ebp - 0x13]
sub eax, 0x169882db
mov byte [0x100d323f], al
movsx ecx, word [ebp - 0x1c]
imul edx, ecx, 0x166d
mov dword [ebp - 0x48], edx
mov ecx, dword [ebp - 0x70]
add ecx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
call fcn.100a26c0
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x170]
add eax, 0x3a6
mov dword [ebp - 0x2858], eax
mov dword [ebp - 0x3c], 0
mov byte [0x100d323f], 0x6f
movzx ecx, byte [ebp - 0x15]
movsx edx, byte [0x100d3216]
imul edx, ecx
movsx eax, byte [0x100d3216]
add eax, edx
mov byte [0x100d3216], al
mov ecx, dword [ebp - 0x88]
add ecx, 1
mov dword [ebp - 0x88], ecx
movsx eax, byte [0x100d3266]
cdq
sub eax, 0x627a0582
mov byte [0x100d31c7], al
movzx edx, byte [0x100d323f]
movzx eax, word [ebp - 0x20]
sub eax, edx
movzx ecx, word [ebp - 0x20]
and ecx, eax
mov word [ebp - 0x20], cx
mov byte [0x100d31c7], 9
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x1620], edx
cmp dword [ebp - 0x1620], 0
je 0x10073507
jmp 0x100735c2
mov byte [0x100d3217], 2
movzx eax, word [0x100d3304]
test eax, eax
jne 0x10073525
mov dword [ebp - 0x348], 1
jmp 0x1007352f
mov dword [ebp - 0x348], 0
mov ecx, dword [ebp - 0x348]
sub ecx, 0x65f4
movsx edx, word [ebp - 0x28]
movsx eax, byte [0x100d31c7]
add eax, edx
xor eax, ecx
cdq
mov esi, eax
mov edi, edx
mov eax, dword [ebp - 0x7c]
cdq
mov ecx, dword [ebp - 0x40]
push ecx
mov ecx, dword [ebp - 0x44]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
mov ebx, edx
movzx edx, word [ebp - 0x20]
xor eax, eax
sub eax, edx
cdq
add eax, ecx
adc edx, ebx
push edi
push esi
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov eax, dword [0x100d3330]
sub eax, 0x4ea57c0c
mov byte [0x100d3266], al
mov eax, dword [ebp - 0x7c]
cdq
push 0xd7430
push 0x16299fab
push edx
push eax
call fcn.100a25b0
mov dword [0x100d32ec], eax
movzx ecx, word [0x100d32d0]
sub ecx, 0x1e609ce3
movzx edx, word [ebp - 0x30]
sub edx, ecx
mov word [ebp - 0x30], dx
mov eax, dword [ebp - 0x170]
add eax, 0x185
mov dword [ebp - 0x1688], eax
movzx eax, word [ebp - 0x24]
cdq
mov dword [ebp - 0x16d8], eax
mov dword [ebp - 0x16d4], edx
mov ecx, dword [ebp - 0x80]
cmp ecx, dword [ebp - 0x16d4]
jg 0x1007373b
jl 0x10073607
mov edx, dword [ebp - 0x84]
cmp edx, dword [ebp - 0x16d8]
jae 0x1007373b
movzx eax, byte [ebp - 0x15]
test eax, eax
je 0x1007369e
movsx ecx, word [0x100d32bc]
add ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x88]
sub edx, ecx
mov dword [ebp - 0x88], edx
mov eax, dword [0x10339c08]
xor ecx, ecx
mov dword [0x100d3320], eax
mov dword [0x100d3324], ecx
mov dx, word [0x100d3310]
mov byte [0x100d323f], dl
mov eax, 1
imul ecx, eax, 0x602
mov dl, byte [ebp - 0x1c]
mov byte [ecx + 0x105cba00], dl
movzx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x4c]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
movzx eax, word [ebp - 0x2c]
cdq
mov ecx, dword [0x100d32dc]
push ecx
mov ecx, dword [0x100d32d8]
push ecx
push edx
push eax
call fcn.100a25b0
mov word [ebp - 0x2c], ax
jmp 0x10073739
movsx eax, byte [ebp - 0x14]
cdq
or eax, dword [ebp - 0x90]
or edx, dword [ebp - 0x8c]
not eax
not edx
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], edx
mov dx, word [0x100d3338]
mov byte [0x100d31ef], dl
mov eax, dword [ebp - 0x68]
add eax, 0x57
mov ecx, dword [ebp - 0x64]
adc ecx, 0
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
add edx, eax
adc esi, ecx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], esi
mov eax, dword [ebp - 0x90]
sub eax, 0xe102
mov ecx, dword [ebp - 0x8c]
sbb ecx, 0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x68]
sub edx, 0xb79d251
mov eax, dword [ebp - 0x64]
sbb eax, 0x52692
xor edx, dword [ebp - 0x44]
xor eax, dword [ebp - 0x40]
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], eax
push 0
push 0
mov ecx, dword [0x100d32e4]
push ecx
mov edx, dword [0x100d32e0]
push edx
call fcn.100a25b0
mov word [ebp - 0x28], ax
jmp 0x1007377b
mov eax, 1
imul ecx, eax, 0x6d
mov dl, byte [0x100d323e]
mov byte [ecx + 0x105c1068], dl
mov eax, 0x4918
mov word [0x100d3310], ax
movsx ecx, byte [0x100d323e]
imul edx, ecx, 0xde9520af
xor eax, eax
mov dword [0x100d32e0], edx
mov dword [0x100d32e4], eax
mov byte [0x100d3266], 0x72
mov ecx, dword [0x10339c08]
mov dword [ebp - 0x174], ecx
movzx edx, word [ebp - 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov dword [0x100d32e8], eax
mov eax, dword [ebp - 0x174]
add eax, 0x294
mov dword [ebp - 0x169c], eax
movsx ecx, byte [ebp - 0x13]
movsx edx, byte [0x100d31c7]
sub edx, ecx
movsx eax, byte [0x100d31c7]
add eax, edx
mov byte [0x100d31c7], al
mov ecx, dword [0x100d3320]
sub ecx, 0xb5ed493a
movzx eax, byte [ebp - 0x12]
cdq
add eax, ecx
mov byte [ebp - 0x12], al
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
add edx, 0x344de847
adc eax, 0x62bde
mov dword [0x100d32e0], edx
mov dword [0x100d32e4], eax
movsx eax, word [ebp - 0x1c]
add eax, 0x959a
cdq
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], edx
movsx ecx, word [0x100d32bc]
imul edx, ecx, 0x2c69
mov word [0x100d32bc], dx
mov eax, dword [ebp - 0x174]
add eax, 0x276
mov dword [ebp - 0x684], eax
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x16e0], ecx
mov dword [ebp - 0x16dc], edx
mov eax, dword [ebp - 0x16e0]
or eax, dword [ebp - 0x16dc]
jne 0x1007385b
mov dword [ebp - 0x34c], 1
jmp 0x10073865
mov dword [ebp - 0x34c], 0
movsx ecx, byte [ebp - 0x13]
cmp ecx, dword [ebp - 0x34c]
je 0x1007387d
mov dword [ebp - 0x350], 1
jmp 0x10073887
mov dword [ebp - 0x350], 0
movzx edx, word [ebp - 0x20]
sub edx, dword [ebp - 0x350]
je 0x100738a6
jmp 0x100738a4
jmp 0x10073912
cmp dword [ebp - 0x88], 0
je 0x10073912
movzx eax, word [ebp - 0x20]
cdq
add eax, 0x8631a022
mov byte [0x100d323e], al
mov eax, dword [0x100d32e8]
add eax, 0xc26790d5
mov byte [ebp - 0x11], al
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
push 0
push 0x51
push edx
push ecx
call fcn.100a25b0
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], edx
movsx eax, byte [0x100d31ef]
xor eax, 0x5c
cdq
mov ecx, dword [ebp - 0x44]
sub ecx, eax
mov eax, dword [ebp - 0x40]
sbb eax, edx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], eax
movzx ecx, byte [ebp - 0x12]
add ecx, 0xf58e
mov byte [0x100d3216], cl
mov edx, dword [ebp - 0x174]
add edx, 0x19a
mov dword [ebp - 0x688], edx
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
sub eax, 0xe9c5
sbb ecx, 0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], ecx
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, dword [ebp - 0x90]
sub ecx, eax
mov eax, dword [ebp - 0x8c]
sbb eax, edx
mov dword [ebp - 0x16e8], ecx
mov dword [ebp - 0x16e4], eax
mov ecx, dword [ebp - 0x16e8]
or ecx, dword [ebp - 0x16e4]
jne 0x10073973
mov dword [ebp - 0x354], 1
jmp 0x1007397d
mov dword [ebp - 0x354], 0
mov ecx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x4c]
not ecx
not esi
mov eax, dword [0x100d32c8]
cdq
xor eax, ecx
xor edx, esi
mov dword [ebp - 0x16f0], eax
mov dword [ebp - 0x16ec], edx
mov edx, dword [ebp - 0x16f0]
or edx, dword [ebp - 0x16ec]
jne 0x100739b7
mov dword [ebp - 0x358], 1
jmp 0x100739c1
mov dword [ebp - 0x358], 0
mov eax, dword [ebp - 0x354]
sub eax, dword [ebp - 0x358]
mov word [ebp - 0x2c], ax
movzx ecx, word [ebp - 0x30]
test ecx, ecx
jne 0x100739e5
mov dword [ebp - 0x35c], 1
jmp 0x100739ef
mov dword [ebp - 0x35c], 0
mov eax, dword [ebp - 0x35c]
xor eax, 0x79
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [0x100d32cc]
cdq
and eax, dword [0x100d32d8]
and edx, dword [0x100d32dc]
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x16f8], eax
mov dword [ebp - 0x16f4], edx
mov edx, dword [ebp - 0x16f8]
or edx, dword [ebp - 0x16f4]
jne 0x10073a48
xor eax, eax
mov dword [ebp - 0x1700], 1
mov dword [ebp - 0x16fc], eax
jmp 0x10073a53
xorps xmm0, xmm0
movlpd qword [ebp - 0x1700], xmm0
movsx eax, byte [0x100d31ef]
cdq
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x2678], edx
xor ecx, eax
movsx eax, byte [0x100d323e]
not eax
cdq
mov edx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
mov dword [ebp - 0x2890], esi
sub edx, eax
not edx
add edx, ecx
sub edx, dword [ebp - 0x1700]
mov byte [0x100d31c6], dl
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
add eax, 0xab5d690d
adc ecx, 0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], ecx
movsx edx, byte [0x100d3216]
xor edx, 0x682a6756
mov byte [0x100d323f], dl
mov eax, dword [0x10339c08]
mov dword [ebp - 0x17c], eax
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x178], eax
cmp dword [ebp - 0x178], 0
je 0x10073afe
mov ecx, dword [ebp - 0x178]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
mov dword [ebp - 0x2894], eax
mov edx, dword [ebp - 0x178]
push edx
call dword [sym.imp.USER32.dll_ArrangeIconicWindows]
mov dword [ebp - 0x2898], eax
mov eax, dword [ebp - 0x17c]
add eax, 0x3b7
mov dword [ebp - 0x204], eax
movzx ecx, word [ebp - 0x2c]
cmp ecx, dword [ebp - 0x7c]
jne 0x10073b24
mov dword [ebp - 0x360], 1
jmp 0x10073b2e
mov dword [ebp - 0x360], 0
movzx edx, word [ebp - 0x2c]
cmp edx, 0xd
jne 0x10073b43
mov dword [ebp - 0x364], 1
jmp 0x10073b4d
mov dword [ebp - 0x364], 0
mov eax, dword [ebp - 0x360]
cmp eax, dword [ebp - 0x364]
jl 0x10073e8a
mov dword [0x100d3328], 3
movsx eax, word [0x100d32f4]
cdq
mov ecx, eax
mov esi, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x289c], edx
movsx eax, word [ebp - 0x28]
cdq
xor eax, esi
not eax
xor eax, ecx
mov dword [ebp - 0x7c], eax
xor eax, eax
mov dword [ebp - 0x38], 0x2e4
mov dword [ebp - 0x34], eax
push 0
push 0xdb580377
mov ecx, dword [0x100d32dc]
push ecx
mov edx, dword [0x100d32d8]
push edx
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [0x10339c0c]
cdq
mov esi, eax
add esi, ecx
movzx eax, byte [ebp - 0x12]
cdq
mov ecx, eax
mov edi, edx
add ecx, dword [ebp - 0x84]
adc edi, dword [ebp - 0x80]
mov eax, dword [0x100d3300]
cdq
sub eax, dword [0x100d3308]
sbb edx, dword [0x100d330c]
push edi
push ecx
push edx
push eax
call fcn.100a25b0
xor eax, esi
mov word [ebp - 0x20], ax
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x4c]
push 0x24484
push 0x6449815b
push eax
push edx
call fcn.100a25b0
mov dword [0x100d32f8], eax
mov dword [0x100d32fc], edx
mov ecx, dword [ebp - 0x3c]
and ecx, 0x702889be
xor edx, edx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x6c], edx
movzx eax, byte [ebp - 0x11]
cdq
add eax, 0x2fbe867c
mov word [0x100d32bc], ax
mov eax, dword [0x100d3328]
mov dword [ebp - 0x368], eax
cmp dword [ebp - 0x368], 3
ja case.default.0x10073c55
mov ecx, dword [ebp - 0x368]
jmp dword [ecx*4 + 0x1009cf44]
movzx edx, byte [ebp - 0x11]
sub edx, dword [ebp - 0x7c]
mov byte [ebp - 0x11], dl
mov eax, dword [0x100d32c8]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x70]
mov eax, dword [0x100d32c8]
cdq
and eax, ecx
mov dword [0x100d32c8], eax
push 0
push 0x5d7603fd
mov edx, dword [0x100d3324]
push edx
mov eax, dword [0x100d3320]
push eax
call fcn.100a25b0
mov dword [0x100d32c8], eax
movsx ecx, byte [0x100d31ef]
mov edx, dword [ebp - 0x88]
sub edx, ecx
mov dword [ebp - 0x88], edx
jmp case.default.0x10073c55
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x28a0], ecx
mov edx, 2
imul ecx, edx, 0x16
mov word [ecx + 0x10339c10], ax
mov edx, 0x192
mov word [0x100d32f4], dx
movsx eax, word [0x100d32f4]
test eax, eax
je 0x10073cf4
movzx ecx, byte [ebp - 0x12]
mov dword [ebp - 0x36c], ecx
jmp 0x10073d01
movzx edx, word [0x100d3310]
mov dword [ebp - 0x36c], edx
mov eax, dword [ebp - 0x36c]
cdq
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov eax, 1
imul ecx, eax, 0x2b40
movzx edx, byte [ecx + 0x1044b3e8]
movsx eax, byte [0x100d3266]
sub eax, edx
mov byte [0x100d3266], al
jmp case.default.0x10073c55
movsx ecx, byte [str.OReserved.PlatformS]
sub ecx, 0xb47f48e
mov byte [0x100d31c7], cl
mov edx, dword [0x100d3328]
add edx, dword [ebp - 0x90]
mov word [ebp - 0x24], dx
xor eax, eax
mov dword [ebp - 0x70], 0x22dfcb86
mov dword [ebp - 0x6c], eax
movsx ecx, byte [ebp - 0x14]
add ecx, dword [ebp - 0x7c]
mov dword [ebp - 0x7c], ecx
jmp case.default.0x10073c55
movsx edx, byte [0x100d31ef]
test edx, edx
jne 0x10073d88
mov dword [ebp - 0x370], 1
jmp 0x10073d92
mov dword [ebp - 0x370], 0
mov eax, dword [ebp - 0x48]
not eax
cdq
mov ecx, eax
mov esi, edx
sub ecx, dword [ebp - 0x44]
sbb esi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x370]
add eax, 0x86a7de6
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [0x100d32ec], eax
movzx eax, word [0x100d3304]
cdq
movzx ecx, word [ebp - 0x30]
sub ecx, dword [0x100d32e8]
xor esi, esi
mov edi, dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
add edi, ecx
adc ebx, esi
or edi, eax
or ebx, edx
mov dword [ebp - 0x1708], edi
mov dword [ebp - 0x1704], ebx
mov edx, dword [ebp - 0x1708]
or edx, dword [ebp - 0x1704]
jne 0x10073e06
mov eax, 1
mov word [ebp - 0x124], ax
jmp 0x10073e0f
xor ecx, ecx
mov word [ebp - 0x124], cx
mov dx, word [ebp - 0x124]
mov word [0x100d3310], dx
movzx eax, byte [ebp - 0x12]
sub eax, 0xb4
mov word [0x100d32f4], ax
xor ecx, ecx
mov dword [0x100d32f8], 2
mov dword [0x100d32fc], ecx
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
movzx eax, word [ebp - 0x20]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov word [ebp - 0x20], ax
movzx eax, word [0x100d3310]
cdq
mov ecx, dword [0x100d32dc]
push ecx
mov ecx, dword [0x100d32d8]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movzx eax, word [0x100d3310]
cdq
add eax, ecx
mov word [0x100d3310], ax
jmp 0x10073f1e
movsx edx, byte [0x100d3216]
cmp dword [ebp - 0x7c], edx
jne 0x10073ea2
mov dword [ebp - 0x374], 1
jmp 0x10073eac
mov dword [ebp - 0x374], 0
movsx eax, byte [0x100d31c7]
cmp dword [ebp - 0x374], eax
je 0x10073f1e
mov ecx, 0xffff8c90
mov word [ebp - 0x28], cx
mov edx, dword [0x100d32f8]
mov eax, dword [0x100d32fc]
mov dword [ebp - 0x28a4], eax
sub edx, 0x4b57bfb6
mov byte [ebp - 0x12], dl
mov ecx, dword [ebp - 0x88]
sub ecx, 0xf292
mov byte [0x100d3216], cl
xor edx, edx
mov dword [ebp - 0x60], 0xc5ff9b46
mov dword [ebp - 0x5c], edx
movsx eax, word [0x100d32f0]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
and edx, ecx
and eax, esi
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x17c]
add ecx, 0x2bd
mov dword [ebp - 0x28a8], ecx
movzx edx, byte [0x100d31c6]
movsx eax, word [ebp - 0x1c]
cmp eax, edx
jl 0x10073f4b
mov dword [ebp - 0x378], 1
jmp 0x10073f55
mov dword [ebp - 0x378], 0
movsx ecx, word [ebp - 0x1c]
cmp ecx, 0x27
jl 0x10073f6a
mov dword [ebp - 0x37c], 1
jmp 0x10073f74
mov dword [ebp - 0x37c], 0
mov edx, dword [ebp - 0x378]
cmp edx, dword [ebp - 0x37c]
jg 0x1007408a
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
add eax, dword [0x100d32d8]
adc ecx, dword [0x100d32dc]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], ecx
movsx eax, word [0x100d32f4]
cdq
add eax, 0xd72206fe
mov word [ebp - 0x24], ax
mov edx, dword [ebp - 0x90]
add edx, 0xbc6056d9
mov eax, dword [ebp - 0x8c]
adc eax, 0
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], eax
mov cx, word [0x100d3304]
mov word [0x100d3338], cx
mov edx, dword [ebp - 0x44]
add edx, 0x6264
mov byte [str.OReserved.PlatformS], dl
jmp 0x1007407a
mov dword [ebp - 4], 0xffffffff
jmp 0x1007408a
mov edx, dword [ebp - 0x17c]
add edx, 0x81
mov dword [ebp - 0x16a8], edx
mov eax, dword [ebp - 0x70]
push eax
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
xor ecx, ecx
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], ecx
cmp dword [0x100d32dc], 0
jg 0x100740d3
jl 0x100740c7
cmp dword [0x100d32d8], 0
ja 0x100740d3
mov dword [ebp - 0x380], 1
jmp 0x100740dd
mov dword [ebp - 0x380], 0
cmp dword [0x100d32dc], 0
jg 0x100740fd
jl 0x100740f1
cmp dword [0x100d32d8], 0x4c
ja 0x100740fd
mov dword [ebp - 0x384], 1
jmp 0x10074107
mov dword [ebp - 0x384], 0
mov edx, dword [ebp - 0x380]
cmp edx, dword [ebp - 0x384]
je 0x10074413
push 0
push 0x21
push 0
push 0xfd
movsx eax, byte [0x100d3217]
cdq
push edx
push eax
push 0
push 0x6b
push 0
push 0
push 0
push 0
call fcn.1009f490
add esp, 0x30
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x1710], eax
mov dword [ebp - 0x170c], ecx
cmp dword [ebp - 0x170c], 0
ja 0x1007416c
cmp dword [ebp - 0x1710], 0
jbe 0x10074178
mov dword [ebp - 0x388], 1
jmp 0x10074182
mov dword [ebp - 0x388], 0
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x1718], edx
mov dword [ebp - 0x1714], eax
cmp dword [ebp - 0x1714], 0
ja 0x100741a6
cmp dword [ebp - 0x1718], 0x4c
jbe 0x100741b2
mov dword [ebp - 0x38c], 1
jmp 0x100741bc
mov dword [ebp - 0x38c], 0
mov ecx, dword [ebp - 0x388]
cmp ecx, dword [ebp - 0x38c]
jl 0x1007440e
push 0
movzx edx, word [0x100d32d0]
push edx
push 0x98
call fcn.1009fde0
add esp, 0xc
mov word [ebp - 0x24], ax
movsx eax, word [ebp - 0x1c]
not eax
test eax, eax
je 0x10074207
movsx ecx, byte [ebp - 0x14]
test ecx, ecx
je 0x10074207
mov dword [ebp - 0x390], 1
jmp 0x10074211
mov dword [ebp - 0x390], 0
cmp dword [ebp - 0x390], 0xdf
je 0x10074340
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x1720], edx
mov dword [ebp - 0x171c], eax
mov ecx, dword [ebp - 0x1720]
or ecx, dword [ebp - 0x171c]
je 0x100742ce
movsx edx, word [0x100d32bc]
test edx, edx
je 0x100742ce
mov al, byte [ebp - 0x84]
mov ecx, 1
imul edx, ecx, 0x9a19
mov byte [edx + 0x10452d10], al
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, eax
mov esi, edx
sub ecx, dword [ebp - 0x44]
sbb esi, dword [ebp - 0x40]
movsx eax, byte [ebp - 0x13]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov byte [ebp - 0x13], al
movzx edx, word [0x100d32cc]
imul eax, edx, 0xda3e
mov byte [ebp - 0x14], al
movzx eax, word [0x100d3304]
cdq
mov ecx, 8
imul edx, ecx, 0x6e
sub eax, dword [edx + 0x10692318]
mov word [0x100d3304], ax
mov eax, dword [ebp - 0x3c]
xor eax, 0xb
mov word [0x100d32d0], ax
movsx ecx, byte [str.OReserved.PlatformS]
mov dword [0x100d32ec], ecx
jmp 0x1007433b
movzx edx, word [0x100d32cc]
test edx, edx
je 0x1007433b
movzx eax, byte [ebp - 0x15]
cdq
mov ecx, dword [0x100d331c]
push ecx
mov ecx, dword [0x100d3318]
push ecx
push edx
push eax
call fcn.100a25b0
mov byte [ebp - 0x15], al
mov edx, dword [0x100d32f8]
mov eax, dword [0x100d32fc]
mov dword [ebp - 0x28ac], eax
sub edx, 0xd863
mov byte [ebp - 0x14], dl
mov dword [ebp - 0x7c], 0x87f2b36e
xor ecx, ecx
mov dword [ebp - 0x84], 0x9a23
mov dword [ebp - 0x80], ecx
mov byte [ebp - 0x14], 1
movzx edx, word [0x100d32d0]
add edx, 0x8e22
mov word [ebp - 0x20], dx
jmp 0x1007440e
mov eax, dword [ebp - 0x44]
add eax, 0xb
mov ecx, dword [ebp - 0x40]
adc ecx, 0
mov dword [ebp - 0x1728], eax
mov dword [ebp - 0x1724], ecx
mov edx, dword [ebp - 0x1728]
or edx, dword [ebp - 0x1724]
je 0x1007440e
mov al, byte [0x100d3216]
mov byte [0x100d323f], al
movzx ecx, word [ebp - 0x24]
imul edx, ecx, 0x9b6a
mov byte [ebp - 0x15], dl
mov eax, dword [0x100d3320]
or eax, dword [0x100d3324]
je 0x100743a4
movzx eax, byte [0x100d323f]
cdq
mov dword [ebp - 0x153c], eax
mov dword [ebp - 0x1538], edx
jmp 0x100743b9
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x153c], ecx
mov dword [ebp - 0x1538], edx
mov al, byte [ebp - 0x153c]
mov byte [0x100d31c7], al
push 0
push 0x9a7262e0
mov ecx, dword [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x44]
push edx
call fcn.100a25b0
mov ecx, eax
mov eax, dword [ebp - 0x88]
cdq
sub eax, ecx
mov dword [ebp - 0x88], eax
mov byte [0x100d31c7], 0xb0
movzx eax, word [0x100d32cc]
cdq
and eax, dword [ebp - 0x44]
and edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
sub ecx, eax
mov eax, dword [ebp - 0x40]
sbb eax, edx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], eax
jmp 0x100744ab
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x1730], ecx
mov dword [ebp - 0x172c], edx
mov eax, dword [ebp - 0x1730]
or eax, dword [ebp - 0x172c]
je 0x10074441
mov ecx, dword [0x100d32ec]
mov dword [ebp - 0x394], ecx
jmp 0x1007444b
movsx edx, byte [ebp - 0x13]
mov dword [ebp - 0x394], edx
mov ax, word [ebp - 0x394]
mov word [ebp - 0x24], ax
movzx ecx, word [0x100d3304]
add ecx, 0x53
mov word [0x100d32bc], cx
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x28b0], edx
movsx eax, byte [ebp - 0x14]
cdq
sub eax, ecx
mov byte [ebp - 0x14], al
movsx eax, word [0x100d32bc]
cdq
mov ecx, eax
mov esi, edx
mov edi, dword [0x100d32f8]
mov ebx, dword [0x100d32fc]
mov eax, dword [ebp - 0x48]
cdq
xor eax, edi
xor edx, ebx
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [0x100d3300], eax
mov edx, dword [0x10339c08]
mov dword [ebp - 0x180], edx
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLCID]
xor ecx, ecx
mov dword [0x100d32f8], eax
mov dword [0x100d32fc], ecx
mov edx, dword [0x100d32f8]
mov eax, dword [0x100d32fc]
mov dword [ebp - 0x1738], edx
mov dword [ebp - 0x1734], eax
cmp dword [ebp - 0x1734], 0
ja 0x10074501
jb 0x100744f5
cmp dword [ebp - 0x1738], 0
ja 0x10074501
mov dword [ebp - 0x398], 1
jmp 0x1007450b
mov dword [ebp - 0x398], 0
mov ecx, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
mov dword [ebp - 0x1740], ecx
mov dword [ebp - 0x173c], edx
cmp dword [ebp - 0x173c], 0
ja 0x10074543
jb 0x10074537
cmp dword [ebp - 0x1740], 0x13
ja 0x10074543
mov dword [ebp - 0x39c], 1
jmp 0x1007454d
mov dword [ebp - 0x39c], 0
mov eax, dword [ebp - 0x398]
cmp eax, dword [ebp - 0x39c]
jl 0x1007474d
movzx ecx, byte [ebp - 0x11]
movsx edx, word [ebp - 0x28]
cmp edx, ecx
jg 0x10074653
movzx eax, word [ebp - 0x20]
movzx ecx, byte [ebp - 0x15]
imul ecx, eax
movzx edx, byte [ebp - 0x15]
and edx, ecx
mov byte [ebp - 0x15], dl
mov eax, 8
mov word [ebp - 0x20], ax
mov cx, word [0x10339c08]
mov word [ebp - 0x20], cx
movzx eax, word [ebp - 0x20]
not eax
cdq
mov ecx, dword [ebp - 0x58]
mov esi, dword [ebp - 0x54]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov dword [ebp - 0x1748], eax
mov dword [ebp - 0x1744], edx
mov edx, dword [ebp - 0x1748]
or edx, dword [ebp - 0x1744]
jne 0x100745db
xor eax, eax
mov dword [ebp - 0xf24], 1
mov dword [ebp - 0xf20], eax
jmp 0x100745e6
xorps xmm0, xmm0
movlpd qword [ebp - 0xf24], xmm0
mov ecx, dword [ebp - 0xf20]
push ecx
mov edx, dword [ebp - 0xf24]
push edx
mov eax, dword [0x100d330c]
push eax
mov ecx, dword [0x100d3308]
push ecx
call fcn.100a25b0
mov dword [ebp - 0x1750], eax
mov dword [ebp - 0x174c], edx
mov edx, dword [ebp - 0x1750]
or edx, dword [ebp - 0x174c]
jne 0x1007462e
mov eax, 1
mov word [ebp - 0x122], ax
jmp 0x10074637
xor ecx, ecx
mov word [ebp - 0x122], cx
mov dx, word [ebp - 0x122]
mov word [0x100d3338], dx
mov eax, 4
mov word [ebp - 0x30], ax
jmp 0x10074748
movzx ecx, byte [ebp - 0x11]
sub ecx, 0xf3
mov word [ebp - 0x2c], cx
movsx edx, byte [0x100d3217]
add edx, 0x65
mov byte [0x100d3266], dl
push 0
push 0xc49b
mov eax, dword [0x100d3324]
push eax
mov ecx, dword [0x100d3320]
push ecx
call fcn.100a25b0
mov word [ebp - 0x24], ax
movzx eax, byte [ebp - 0x11]
cdq
add eax, dword [0x100d32c0]
adc edx, dword [0x100d32c4]
mov ecx, dword [0x100d32c0]
sub ecx, eax
mov eax, dword [0x100d32c4]
sbb eax, edx
mov dword [0x100d32c0], ecx
mov dword [0x100d32c4], eax
movsx ecx, byte [str.OReserved.PlatformS]
mov edx, dword [ebp - 0x3c]
xor edx, ecx
mov eax, dword [ebp - 0x3c]
sub eax, edx
mov dword [ebp - 0x3c], eax
movzx ecx, word [ebp - 0x2c]
test ecx, ecx
jne 0x100746e1
mov dword [ebp - 0x3a0], 1
jmp 0x100746eb
mov dword [ebp - 0x3a0], 0
movzx edx, word [0x100d32d0]
add edx, dword [ebp - 0x3a0]
jne 0x1007470e
xor eax, eax
mov dword [ebp - 0xf2c], 1
mov dword [ebp - 0xf28], eax
jmp 0x10074719
xorps xmm0, xmm0
movlpd qword [ebp - 0xf2c], xmm0
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
mov esi, dword [ebp - 0x54]
push edx
push ecx
push esi
push eax
call fcn.100a25b0
push edx
push eax
mov ecx, dword [ebp - 0xf28]
push ecx
mov edx, dword [ebp - 0xf2c]
push edx
call fcn.100a25b0
mov dword [0x100d32c8], eax
jmp 0x1007485e
mov eax, dword [0x100d3318]
or eax, dword [0x100d331c]
je 0x100747c2
movsx eax, word [0x100d3338]
sub eax, 0x3a7f584d
cdq
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
movsx ecx, byte [0x10339c0c]
xor ecx, 0xa4
mov word [0x100d3310], cx
mov ecx, dword [0x100d3320]
sub ecx, 0xbf42
movzx eax, byte [ebp - 0x15]
cdq
add eax, ecx
mov byte [ebp - 0x15], al
movsx edx, word [0x100d3338]
imul eax, edx, 0x83
mov word [0x100d32bc], ax
movsx ecx, word [0x100d32f0]
sub ecx, 0x1b95617b
mov dword [0x100d3328], ecx
jmp 0x1007485e
movsx edx, word [ebp - 0x1c]
movsx eax, word [ebp - 0x1c]
sub eax, edx
je 0x1007485e
movsx eax, word [0x100d32f0]
cdq
push edx
push eax
mov ecx, dword [0x100d32c4]
push ecx
mov edx, dword [0x100d32c0]
push edx
call fcn.100a25b0
push edx
push eax
mov eax, dword [0x100d32c4]
push eax
mov ecx, dword [0x100d32c0]
push ecx
call fcn.100a25b0
mov dword [0x100d32c0], eax
mov dword [0x100d32c4], edx
imul edx, dword [0x100d32e8], 0x8d442190
xor eax, eax
mov dword [0x100d32d8], edx
mov dword [0x100d32dc], eax
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x28b4], edx
add ecx, 0x6f176852
mov eax, dword [ebp - 0x88]
shl eax, cl
mov dword [ebp - 0x88], eax
movzx ecx, byte [0x100d31c6]
sub ecx, 0x45
movsx edx, byte [0x100d31ef]
sub edx, ecx
mov byte [0x100d31ef], dl
mov eax, dword [ebp - 0x180]
add eax, 0x3ff
mov dword [ebp - 0x24c8], eax
mov dword [0x100d32ec], 3
xor ecx, ecx
mov dword [ebp - 0x44], 0x67303c51
mov dword [ebp - 0x40], ecx
mov byte [ebp - 0x14], 0x86
mov edx, 1
imul eax, edx, 0x3813
mov cl, byte [eax + 0x1068b6b8]
mov byte [ebp - 0x11], cl
movsx edx, word [ebp - 0x28]
mov eax, dword [0x100d3328]
xor eax, edx
mov ecx, dword [0x100d3328]
sub ecx, eax
mov dword [0x100d3328], ecx
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x1758], edx
mov dword [ebp - 0x1754], eax
mov ecx, dword [ebp - 0x1758]
or ecx, dword [ebp - 0x1754]
jne 0x100748ea
xor edx, edx
mov dword [ebp - 0x1760], 1
mov dword [ebp - 0x175c], edx
jmp 0x100748f5
xorps xmm0, xmm0
movlpd qword [ebp - 0x1760], xmm0
movsx eax, word [0x100d3338]
cdq
mov ecx, dword [ebp - 0x44]
sub ecx, eax
sub ecx, 0x5b
not ecx
add ecx, dword [ebp - 0x1760]
mov word [0x100d32f0], cx
mov edx, dword [0x100d32ec]
mov dword [ebp - 0x3a4], edx
cmp dword [ebp - 0x3a4], 3
ja case.default.0x10074933
mov eax, dword [ebp - 0x3a4]
jmp dword [eax*4 + 0x1009cf54]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x28b8], edx
mov eax, dword [0x100d3300]
cdq
sub eax, dword [ebp - 0x84]
sub eax, ecx
mov byte [0x100d3216], al
mov byte [0x100d323e], 0xf3
movsx eax, byte [0x10339c0c]
add eax, dword [0x100d32ec]
mov byte [0x10339c0c], al
xor ecx, ecx
mov dword [ebp - 0x58], 0xcbc4
mov dword [ebp - 0x54], ecx
movsx eax, word [0x100d32bc]
cdq
mov ecx, eax
sub ecx, dword [0x100d3320]
movsx eax, word [0x100d32bc]
cdq
sub eax, ecx
mov word [0x100d32bc], ax
jmp case.default.0x10074933
mov edx, dword [0x100d32d8]
sub edx, 1
mov eax, dword [0x100d32dc]
sbb eax, 0
mov dword [0x100d32d8], edx
mov dword [0x100d32dc], eax
push 0
push 0x114b7759
mov ecx, dword [0x100d32c4]
push ecx
mov edx, dword [0x100d32c0]
push edx
call fcn.100a25b0
mov dword [0x100d32c8], eax
mov eax, dword [ebp - 0x3c]
mov dword [0x100d32e8], eax
movsx ecx, word [ebp - 0x1c]
imul ecx, dword [0x100d32ec]
xor edx, edx
xor ecx, dword [0x100d32c0]
xor edx, dword [0x100d32c4]
mov dword [0x100d3308], ecx
mov dword [0x100d330c], edx
mov al, byte [ebp - 0x68]
mov byte [0x100d323e], al
movzx eax, word [0x100d32cc]
and eax, 0x37b5
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
jmp case.default.0x10074933
mov edx, dword [ebp - 0x68]
sub edx, 1
mov eax, dword [ebp - 0x64]
sbb eax, 0
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], eax
mov ecx, 0xfa5cf
mov dword [0x100d32e0], 0xe26af257
mov dword [0x100d32e4], ecx
movsx eax, word [0x100d3338]
cdq
and eax, 0xf58daf60
and edx, 0xac2b3
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
movsx edx, byte [ebp - 0x13]
movsx eax, byte [0x100d31ef]
xor eax, edx
movsx ecx, byte [0x100d31ef]
add ecx, eax
mov byte [0x100d31ef], cl
movsx edx, byte [0x100d31ef]
test edx, edx
jne 0x10074abb
xor eax, eax
mov dword [ebp - 0xf34], 1
mov dword [ebp - 0xf30], eax
jmp 0x10074ac6
xorps xmm0, xmm0
movlpd qword [ebp - 0xf34], xmm0
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x4c]
add ecx, eax
adc esi, edx
not ecx
not esi
add ecx, dword [ebp - 0xf34]
adc esi, dword [ebp - 0xf30]
not ecx
not esi
movzx eax, byte [0x100d323f]
not eax
cdq
sub eax, ecx
sbb edx, esi
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
jmp case.default.0x10074933
mov byte [0x100d31ef], 0x18
mov edx, dword [ebp - 0x48]
sar edx, 4
mov byte [ebp - 0x11], dl
mov al, byte [0x100d31c6]
mov byte [ebp - 0x13], al
xor ecx, ecx
mov dword [ebp - 0x50], 0x1c4
mov dword [ebp - 0x4c], ecx
mov edx, dword [0x10339c08]
xor eax, eax
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], eax
movzx eax, word [0x100d32d0]
cdq
add eax, dword [ebp - 0x44]
adc edx, dword [ebp - 0x40]
and eax, dword [ebp - 0x44]
and edx, dword [ebp - 0x40]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov ecx, dword [ebp - 0x180]
add ecx, 0x1b9
mov dword [ebp - 0x24c4], ecx
movsx eax, byte [0x100d3217]
cdq
add eax, dword [ebp - 0x44]
adc edx, dword [ebp - 0x40]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
movzx edx, word [ebp - 0x20]
test edx, edx
je 0x10074b84
mov al, byte [ebp - 0x12]
mov byte [ebp - 0xa1], al
jmp 0x10074b8d
mov cl, byte [ebp - 0x11]
mov byte [ebp - 0xa1], cl
movzx eax, byte [ebp - 0xa1]
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movzx edx, word [ebp - 0x24]
movsx eax, byte [str.OReserved.PlatformS]
not eax
sub eax, edx
add eax, dword [ebp - 0x48]
cdq
mov esi, eax
mov edi, edx
mov eax, dword [0x100d32e0]
not eax
mov ecx, dword [0x100d32e4]
not ecx
mov edx, dword [ebp - 0x68]
sub edx, eax
mov eax, dword [ebp - 0x64]
sbb eax, ecx
mov ecx, dword [0x100d32e8]
sub ecx, dword [0x100d3328]
xor ebx, ebx
push eax
push edx
push ebx
push ecx
call fcn.100a25b0
xor eax, esi
xor edx, edi
mov dword [0x100d3320], eax
mov dword [0x100d3324], edx
mov byte [0x10339c0c], 0x6c
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x1768], edx
mov dword [ebp - 0x1764], eax
mov ecx, dword [ebp - 0x1768]
or ecx, dword [ebp - 0x1764]
jne 0x10074c24
mov dword [ebp - 0x3a8], 1
jmp 0x10074c2e
mov dword [ebp - 0x3a8], 0
movsx edx, byte [ebp - 0x13]
test edx, edx
jne 0x10074c4a
xor eax, eax
mov dword [ebp - 0xf3c], 1
mov dword [ebp - 0xf38], eax
jmp 0x10074c55
xorps xmm0, xmm0
movlpd qword [ebp - 0xf3c], xmm0
mov ecx, dword [ebp - 0x4c]
mov esi, dword [ebp - 0xf3c]
sub esi, dword [ebp - 0x50]
mov edi, dword [ebp - 0xf38]
sbb edi, ecx
movsx eax, word [0x100d32f0]
cdq
mov ecx, eax
mov ebx, edx
sub ecx, esi
sbb ebx, edi
movsx edx, byte [0x100d31c7]
movzx eax, byte [ebp - 0x15]
add eax, edx
and eax, dword [ebp - 0x3a8]
cdq
push ebx
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x180]
add eax, 0x3c3
mov dword [ebp - 0x6fc], eax
movzx eax, word [0x100d3310]
cdq
mov ecx, dword [0x100d3308]
sub ecx, eax
mov eax, dword [0x100d330c]
sbb eax, edx
mov dword [0x100d3308], ecx
mov dword [0x100d330c], eax
movzx eax, word [ebp - 0x30]
sub eax, 0x87c
cdq
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
cmp dword [0x100d3300], 0
jne 0x10074cf4
mov dword [ebp - 0x3ac], 1
jmp 0x10074cfe
mov dword [ebp - 0x3ac], 0
movsx ecx, byte [0x10339c0c]
movzx edx, word [ebp - 0x2c]
imul edx, ecx
not edx
mov eax, dword [ebp - 0x3ac]
sub eax, edx
mov byte [0x100d3217], al
xor ecx, ecx
mov edx, dword [0x100d3320]
sub edx, dword [ebp - 0x3c]
mov eax, dword [0x100d3324]
sbb eax, ecx
add edx, dword [0x100d3320]
adc eax, dword [0x100d3324]
mov dword [0x100d3320], edx
mov dword [0x100d3324], eax
movzx ecx, word [ebp - 0x24]
add ecx, 0x57955800
mov word [0x100d32f4], cx
mov edx, dword [0x10339c08]
mov dword [ebp - 0x184], edx
movsx eax, word [0x100d32f0]
movzx ecx, word [ebp - 0x20]
cmp ecx, eax
jg 0x10074dbc
mov dword [ebp - 0x3c], 0x1988c590
imul edx, dword [0x100d32c8], 0xb0
mov byte [0x100d31c7], dl
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x28bc], edx
movsx eax, byte [0x100d3216]
cdq
mov esi, eax
add esi, ecx
movsx eax, byte [0x100d3216]
cdq
sub eax, esi
mov byte [0x100d3216], al
movzx eax, word [ebp - 0x24]
imul ecx, eax, 0xac
mov word [ebp - 0x2c], cx
mov edx, dword [ebp - 0x184]
add edx, 0x2fe
mov dword [ebp - 0x28c0], edx
movsx eax, byte [str.OReserved.PlatformS]
test eax, eax
je 0x10074de4
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x3b0], ecx
jmp 0x10074ded
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x3b0], edx
mov al, byte [ebp - 0x3b0]
mov byte [0x100d31ef], al
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x68]
not eax
mov esi, dword [ebp - 0x64]
not esi
mov edi, dword [ebp - 0x84]
sub edi, eax
mov eax, dword [ebp - 0x80]
sbb eax, esi
push edx
push ecx
push eax
push edi
call fcn.100a25b0
mov ecx, 0x881f016a
sub ecx, eax
mov eax, 0xfff306aa
sbb eax, edx
mov dword [ebp - 0x1770], ecx
mov dword [ebp - 0x176c], eax
mov ecx, dword [ebp - 0x1770]
or ecx, dword [ebp - 0x176c]
jne 0x10074e5a
xor edx, edx
mov dword [ebp - 0xf44], 1
mov dword [ebp - 0xf40], edx
jmp 0x10074e65
xorps xmm0, xmm0
movlpd qword [ebp - 0xf44], xmm0
mov eax, dword [ebp - 0xf44]
mov ecx, dword [ebp - 0xf40]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], ecx
mov edx, dword [0x10339c08]
xor eax, eax
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], eax
push 0x5a1d0
push 0xc8f8be8d
mov ecx, dword [0x100d331c]
push ecx
mov edx, dword [0x100d3318]
push edx
call fcn.100a25b0
mov dword [ebp - 0x48], eax
movzx eax, byte [0x100d323f]
movsx ecx, word [0x100d32bc]
add ecx, eax
movsx edx, word [0x100d32bc]
add edx, ecx
mov word [0x100d32bc], dx
xor eax, eax
mov dword [ebp - 0x90], 0x10
mov dword [ebp - 0x8c], eax
mov ecx, dword [ebp - 0x184]
add ecx, 0x148
mov dword [ebp - 0x758], ecx
movzx edx, byte [0x100d31c6]
cmp edx, dword [0x100d32c8]
jne 0x10074f8e
mov eax, dword [0x100d32f8]
mov ecx, dword [0x100d32fc]
mov dword [ebp - 0x28c4], ecx
mov edx, dword [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x84]
add eax, 1
mov ecx, dword [ebp - 0x80]
adc ecx, 0
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], ecx
mov dl, byte [0x100d323f]
mov byte [ebp - 0x12], dl
imul eax, dword [0x100d32c8], 0
movsx ecx, word [ebp - 0x28]
not ecx
mov edx, dword [0x100d32c8]
sub edx, ecx
add edx, eax
add edx, dword [ebp - 0x48]
jne 0x10074f66
xor eax, eax
mov dword [ebp - 0xf4c], 1
mov dword [ebp - 0xf48], eax
jmp 0x10074f71
xorps xmm0, xmm0
movlpd qword [ebp - 0xf4c], xmm0
mov ecx, dword [ebp - 0xf4c]
mov edx, dword [ebp - 0xf48]
mov dword [0x100d3320], ecx
mov dword [0x100d3324], edx
jmp 0x100750e4
cmp dword [0x100d3300], 0xf4
je 0x10074fa6
mov dword [ebp - 0x3b4], 1
jmp 0x10074fb0
mov dword [ebp - 0x3b4], 0
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x1778], eax
mov dword [ebp - 0x1774], ecx
mov edx, dword [0x100d32c4]
cmp edx, dword [ebp - 0x1774]
ja 0x10074feb
jb 0x10074fdf
mov eax, dword [0x100d32c0]
cmp eax, dword [ebp - 0x1778]
jae 0x10074feb
mov dword [ebp - 0x3b8], 1
jmp 0x10074ff5
mov dword [ebp - 0x3b8], 0
mov ecx, dword [ebp - 0x3b4]
cmp ecx, dword [ebp - 0x3b8]
jle 0x10075078
mov edx, dword [0x100d32f8]
mov eax, dword [0x100d32fc]
mov dword [ebp - 0x28c8], eax
sub edx, 0x77
mov dword [0x100d3328], edx
xor ecx, ecx
mov dword [0x100d32c0], 0x1ca
mov dword [0x100d32c4], ecx
mov edx, dword [0x100d32e8]
add edx, dword [ebp - 0x88]
mov eax, dword [0x100d32e8]
add eax, edx
mov dword [0x100d32e8], eax
movzx ecx, word [0x100d32d0]
movzx edx, byte [ebp - 0x15]
imul edx, ecx
mov byte [ebp - 0x15], dl
movsx eax, word [0x100d3338]
imul eax, dword [0x100d3328]
movsx ecx, word [0x100d3338]
sub ecx, eax
mov word [0x100d3338], cx
jmp 0x100750e4
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x1780], edx
mov dword [ebp - 0x177c], eax
mov ecx, dword [ebp - 0x1780]
or ecx, dword [ebp - 0x177c]
je 0x100750e4
movsx edx, word [ebp - 0x28]
imul eax, edx, 0x67
cdq
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov byte [0x100d31ef], 0x70
mov eax, dword [ebp - 0x68]
sub eax, 0x334d4456
mov ecx, dword [ebp - 0x64]
sbb ecx, 0x4afd4
mov dword [0x100d3330], eax
mov dword [0x100d3334], ecx
mov edx, dword [ebp - 0x68]
sub edx, 0x26e9de2d
mov byte [ebp - 0x12], dl
movsx eax, word [ebp - 0x1c]
movsx ecx, word [ebp - 0x1c]
imul ecx, eax
mov word [ebp - 0x1c], cx
mov edx, dword [ebp - 0x184]
add edx, 0x1ca
mov dword [ebp - 0x24cc], edx
movsx eax, byte [0x100d3216]
cdq
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x1788], ecx
mov dword [ebp - 0x1784], esi
mov dword [ebp - 0x1790], eax
mov dword [ebp - 0x178c], edx
mov edx, dword [ebp - 0x1788]
cmp edx, dword [ebp - 0x1790]
jne 0x10075247
mov eax, dword [ebp - 0x1784]
cmp eax, dword [ebp - 0x178c]
jne 0x10075247
mov ecx, dword [0x100d3318]
or ecx, dword [0x100d331c]
je 0x10075167
mov edx, dword [0x100d3318]
mov eax, dword [0x100d331c]
mov dword [ebp - 0xf54], edx
mov dword [ebp - 0xf50], eax
jmp 0x1007517b
movzx eax, byte [0x100d323f]
cdq
mov dword [ebp - 0xf54], eax
mov dword [ebp - 0xf50], edx
mov cl, byte [ebp - 0xf54]
mov byte [0x100d3266], cl
push 0
push 0xd2
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x44]
push eax
call fcn.100a25b0
mov byte [0x100d31c7], al
movsx eax, word [ebp - 0x28]
cdq
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x28cc], edx
add ecx, eax
not ecx
mov word [0x100d32f0], cx
movsx eax, byte [0x10339c0c]
not eax
movsx ecx, byte [0x100d31ef]
sub ecx, eax
movzx eax, byte [ebp - 0x12]
and eax, ecx
cdq
add eax, dword [0x100d32e0]
adc edx, dword [0x100d32e4]
mov dword [ebp - 0x1798], eax
mov dword [ebp - 0x1794], edx
mov edx, dword [ebp - 0x1798]
or edx, dword [ebp - 0x1794]
jne 0x10075207
mov dword [ebp - 0x3bc], 1
jmp 0x10075211
mov dword [ebp - 0x3bc], 0
mov eax, dword [ebp - 0x3bc]
mov dword [0x100d32c8], eax
movzx eax, word [0x100d3304]
cdq
add eax, 0x880d472
mov word [0x100d32bc], ax
movzx ecx, word [0x100d32d0]
movsx edx, byte [0x100d31ef]
sub edx, ecx
mov byte [0x100d31ef], dl
jmp 0x100752c2
mov eax, dword [ebp - 0x7c]
cdq
sub eax, dword [ebp - 0x68]
mov byte [0x100d31c7], al
movzx eax, byte [0x100d323f]
cdq
mov ecx, dword [0x100d32e0]
sub ecx, eax
mov eax, dword [0x100d32e4]
sbb eax, edx
add ecx, dword [0x100d32e0]
adc eax, dword [0x100d32e4]
mov dword [0x100d32e0], ecx
mov dword [0x100d32e4], eax
movsx ecx, byte [0x100d31c7]
imul edx, ecx, 0x63
mov word [0x100d3310], dx
mov eax, dword [0x10339c08]
xor ecx, ecx
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], ecx
mov eax, dword [ebp - 0x48]
cdq
mov ecx, dword [ebp - 0x58]
mov esi, dword [ebp - 0x54]
add ecx, eax
adc esi, edx
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
sub edx, ecx
sbb eax, esi
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], eax
mov ecx, dword [0x10339c08]
mov dword [ebp - 0x190], ecx
jmp 0x100752f5
jmp 0x1007530b
jmp 0x10075317
mov edx, dword [ebp - 0x190]
add edx, 0x373
mov dword [ebp - 0x28d0], edx
movsx eax, word [0x100d32bc]
cmp dword [0x100d3328], eax
jae 0x100757ed
mov dword [ebp - 0x188], 0x3e
movsx ecx, byte [0x100d31ef]
add ecx, 0x3ddb8645
mov word [ebp - 0x1c], cx
movzx edx, word [0x100d32d0]
sub edx, 0x86a6ba3
movzx eax, byte [ebp - 0x11]
sub eax, edx
mov byte [ebp - 0x11], al
movzx eax, word [0x100d3304]
cdq
mov ecx, 8
imul ecx, ecx, 0x78e9
mov dword [ecx + 0x10619e88], eax
mov dword [ecx + 0x10619e8c], edx
mov eax, dword [ebp - 0x88]
add eax, 0x1253
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
movzx eax, word [0x100d32cc]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x17a0], ecx
mov dword [ebp - 0x179c], esi
mov edx, dword [ebp - 0x17a0]
or edx, dword [ebp - 0x179c]
jne 0x100753de
xor eax, eax
mov dword [ebp - 0xf5c], 1
mov dword [ebp - 0xf58], eax
jmp 0x100753e9
xorps xmm0, xmm0
movlpd qword [ebp - 0xf5c], xmm0
movsx ecx, byte [ebp - 0x13]
test ecx, ecx
jne 0x100753fd
mov dword [ebp - 0x3c0], 1
jmp 0x10075407
mov dword [ebp - 0x3c0], 0
movzx edx, word [0x100d3310]
movzx eax, word [0x100d3310]
imul eax, edx
not eax
mov ecx, dword [ebp - 0x3c0]
sub ecx, eax
jne 0x10075438
xor edx, edx
mov dword [ebp - 0x17a8], 1
mov dword [ebp - 0x17a4], edx
jmp 0x10075443
xorps xmm0, xmm0
movlpd qword [ebp - 0x17a8], xmm0
mov eax, dword [0x100d32e8]
xor ecx, ecx
push ecx
push eax
mov edx, dword [ebp - 0x64]
push edx
mov eax, dword [ebp - 0x68]
push eax
call fcn.100a25b0
push edx
push eax
mov ecx, dword [ebp - 0xf58]
push ecx
mov edx, dword [ebp - 0xf5c]
push edx
call fcn.100a25b0
add eax, dword [ebp - 0x17a8]
mov dword [0x100d32e8], eax
movsx eax, byte [0x100d31c7]
movsx ecx, byte [0x100d3266]
cmp ecx, eax
jge 0x10075735
push 0
push 0
push 0
push 0
mov edx, dword [0x100d32e4]
push edx
mov eax, dword [0x100d32e0]
push eax
movzx eax, byte [ebp - 0x15]
cdq
push edx
push eax
push 0
push 0
call fcn.100a1a10
add esp, 0x28
mov dword [0x100d32c0], eax
mov dword [0x100d32c4], edx
movsx ecx, word [ebp - 0x28]
test ecx, ecx
je 0x10075543
movsx edx, byte [0x10339c0c]
test edx, edx
je 0x1007553e
mov eax, dword [ebp - 0x70]
mov dword [0x100d32e8], eax
mov cx, word [ebp - 0x20]
add cx, 1
mov word [ebp - 0x20], cx
movzx eax, word [ebp - 0x24]
cdq
mov dword [0x100d3308], eax
mov dword [0x100d330c], edx
mov eax, dword [ebp - 0x88]
cdq
mov ecx, 8
imul ecx, ecx, 0x33
mov dword [ecx + 0x1045db88], eax
mov dword [ecx + 0x1045db8c], edx
mov dx, word [0x10339c08]
mov word [ebp - 0x2c], dx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0x28d4], ecx
sub eax, 0x704cc6c7
mov edx, dword [0x100d32ec]
add edx, eax
mov dword [0x100d32ec], edx
jmp 0x10075730
movsx eax, word [0x100d3338]
test eax, eax
jne 0x100755ed
mov ecx, dword [ebp - 0x70]
sub ecx, 0xa9cf
mov word [ebp - 0x24], cx
mov dx, word [0x10339c08]
mov word [ebp - 0x20], dx
movzx eax, word [0x100d32cc]
cdq
mov ecx, dword [0x100d32c0]
not ecx
mov esi, dword [0x100d32c4]
not esi
push edx
push eax
push esi
push ecx
call fcn.100a25b0
xor eax, 0x7944c93c
xor edx, 0
mov dword [ebp - 0x17b0], eax
mov dword [ebp - 0x17ac], edx
mov edx, dword [ebp - 0x17b0]
or edx, dword [ebp - 0x17ac]
jne 0x100755b6
mov byte [ebp - 0xa2], 1
jmp 0x100755bd
mov byte [ebp - 0xa2], 0
mov al, byte [ebp - 0xa2]
mov byte [ebp - 0x12], al
mov ecx, dword [ebp - 0x48]
and ecx, 0xc7
mov word [0x100d32f0], cx
mov edx, dword [0x100d3328]
xor edx, 0xf04cd1ca
mov byte [0x10339c0c], dl
jmp 0x10075730
movsx eax, byte [str.OReserved.PlatformS]
movsx ecx, word [0x100d32f4]
not ecx
cmp ecx, eax
jg 0x10075687
mov edx, dword [0x100d3300]
sub edx, 1
mov dword [0x100d3300], edx
movzx eax, byte [0x100d323f]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
add edx, ecx
adc eax, esi
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], eax
movsx eax, word [0x100d32f4]
cdq
mov ecx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x4c]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov ecx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x4c]
and ecx, eax
and esi, edx
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x4c], esi
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
mov ecx, dword [0x100d32ec]
xor esi, esi
push eax
push edx
push esi
push ecx
call fcn.100a25b0
mov edx, dword [0x100d32ec]
sub edx, eax
mov dword [0x100d32ec], edx
jmp 0x10075730
mov eax, dword [ebp - 0x44]
or eax, dword [ebp - 0x40]
je 0x10075730
mov cl, byte [0x10339c08]
mov byte [0x100d323f], cl
movzx eax, word [ebp - 0x30]
cdq
mov ecx, eax
add ecx, dword [0x100d3320]
movzx eax, word [ebp - 0x30]
cdq
add eax, ecx
mov word [ebp - 0x30], ax
movsx edx, word [0x100d3338]
imul eax, edx, 0xb8
cdq
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov byte [0x100d3216], 2
cmp dword [0x100d3328], 0
jne 0x100756e9
mov eax, 1
mov word [ebp - 0x120], ax
jmp 0x100756f2
xor ecx, ecx
mov word [ebp - 0x120], cx
mov dx, word [ebp - 0x120]
mov word [0x100d3304], dx
movsx eax, byte [0x100d3217]
cdq
add eax, dword [ebp - 0x90]
adc edx, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x90]
sub ecx, eax
mov eax, dword [ebp - 0x8c]
sbb eax, edx
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x8c], eax
jmp 0x100757c9
movsx ecx, byte [ebp - 0x13]
test ecx, ecx
je 0x100757c9
mov edx, dword [0x100d32e0]
sub edx, 0xcfdde153
mov eax, dword [0x100d32e4]
sbb eax, 0
mov dword [0x100d32c0], edx
mov dword [0x100d32c4], eax
mov ecx, dword [ebp - 0x70]
not ecx
mov edx, dword [ebp - 0x6c]
not edx
mov dword [0x100d3330], ecx
mov dword [0x100d3334], edx
mov ax, word [0x100d32f4]
sub ax, 1
mov word [0x100d32f4], ax
mov ecx, dword [0x100d3318]
add ecx, dword [0x100d3318]
mov edx, dword [0x100d331c]
adc edx, dword [0x100d331c]
mov dword [0x100d3318], ecx
mov dword [0x100d331c], edx
push 0
push 0x519a
mov eax, dword [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x44]
push ecx
call fcn.100a25b0
mov dword [0x100d32e0], eax
mov dword [0x100d32e4], edx
mov edx, dword [ebp - 0x188]
add edx, 1
mov dword [ebp - 0x188], edx
cmp dword [ebp - 0x188], 0x2b5
jl 0x10075479
jmp 0x100758f1
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x17b8], eax
mov dword [ebp - 0x17b4], ecx
cmp dword [ebp - 0x17b4], 0
jg 0x100758f1
jl 0x1007581b
cmp dword [ebp - 0x17b8], 0x4a
ja 0x100758f1
movzx edx, byte [ebp - 0x15]
xor edx, 0x40
mov dword [0x100d3300], edx
movzx eax, word [0x100d32cc]
test eax, eax
jne 0x1007583f
mov dword [ebp - 0x3c4], 1
jmp 0x10075849
mov dword [ebp - 0x3c4], 0
movzx eax, byte [ebp - 0x12]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [0x100d3330]
adc esi, dword [0x100d3334]
not ecx
not esi
sub ecx, 0xba2ac669
sbb esi, 0xb789f
movsx edx, byte [0x100d31c7]
and edx, dword [ebp - 0x3c4]
movzx eax, word [0x100d32d0]
sub eax, edx
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov word [0x100d3304], ax
movzx eax, byte [ebp - 0x15]
cdq
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
and ecx, eax
and esi, edx
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
add edx, ecx
adc eax, esi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], eax
movzx eax, word [ebp - 0x30]
cdq
xor eax, dword [0x100d3330]
xor edx, dword [0x100d3334]
mov dword [0x100d3330], eax
mov dword [0x100d3334], edx
mov ecx, dword [0x100d3320]
add ecx, 0xd280f11b
mov word [0x100d32f0], cx
movzx edx, byte [ebp - 0x12]
add edx, dword [ebp - 0x7c]
not edx
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x190]
add eax, 0x30d
mov dword [ebp - 0x2a8], eax
mov dword [ebp - 0x18c], 0
jmp 0x1007591d
mov ecx, dword [ebp - 0x18c]
add ecx, 1
mov dword [ebp - 0x18c], ecx
cmp dword [ebp - 0x18c], 0x366
jge 0x100759c5
movsx eax, byte [0x100d3266]
cdq
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
add ecx, eax
adc esi, edx
mov dword [0x100d32f8], ecx
mov dword [0x100d32fc], esi
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x28d8], edx
movsx eax, word [ebp - 0x28]
cdq
sub eax, ecx
mov byte [0x100d323e], al
mov ecx, dword [0x100d32d8]
add ecx, 0x35
mov esi, dword [0x100d32dc]
adc esi, 0
mov edi, dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
not edi
not ebx
movzx eax, byte [ebp - 0x12]
cdq
add eax, edi
adc edx, ebx
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [0x100d32e0], eax
mov dword [0x100d32e4], edx
xor edx, edx
mov dword [ebp - 0x70], 2
mov dword [ebp - 0x6c], edx
mov eax, 0x4f
mov word [ebp - 0x1c], ax
mov cl, byte [ebp - 0x13]
add cl, 1
mov byte [ebp - 0x13], cl
jmp 0x1007590e
mov edx, dword [ebp - 0x190]
add edx, 0x1f1
mov dword [ebp - 0x15a8], edx
mov dword [ebp - 0x194], 0x1375
movzx eax, word [ebp - 0x20]
shl eax, 6
mov word [0x100d3304], ax
movzx ecx, byte [ebp - 0x12]
imul edx, ecx, 0xdf
mov word [0x100d3338], dx
movzx eax, word [0x100d32cc]
movzx ecx, word [ebp - 0x20]
sub ecx, eax
mov word [ebp - 0x20], cx
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
sub edx, dword [0x100d32e0]
sbb eax, dword [0x100d32e4]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], eax
mov cl, byte [ebp - 0x12]
add cl, 1
mov byte [ebp - 0x12], cl
mov edx, 8
imul eax, edx, 0x28
mov ecx, dword [eax + 0x10692318]
mov dword [0x100d32c8], ecx
cmp dword [ebp - 0x194], 0x1256
jle 0x10075b20
mov edx, dword [ebp - 0x90]
or edx, dword [ebp - 0x8c]
je 0x10075a8c
mov ecx, 8
mov esi, str.RegistryKeyPath
lea edi, [ebp - 0x2aa4]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x2aa4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [0x100d32ec], eax
jmp 0x10075b0c
movzx eax, byte [ebp - 0x12]
cdq
sub eax, 0xdfd0b90d
mov dword [ebp - 0x48], eax
movzx eax, word [0x100d32cc]
cdq
mov ecx, dword [0x100d3330]
sub ecx, eax
mov eax, dword [0x100d3330]
mov edx, dword [0x100d3334]
call fcn.100a25f0
mov dword [0x100d3330], eax
mov dword [0x100d3334], edx
mov cx, word [ebp - 0x30]
mov edx, 1
imul eax, edx, 0x2e
mov byte [eax + 0x1069f780], cl
movsx ecx, word [0x100d32f4]
movsx edx, word [0x100d3338]
imul edx, ecx
mov word [0x100d3338], dx
movsx eax, byte [0x100d31c7]
cdq
push 0x62a87
push 0x93de0c9
push edx
push eax
call fcn.100a25b0
mov byte [0x10339c0c], al
mov eax, dword [ebp - 0x194]
sub eax, 1
mov dword [ebp - 0x194], eax
jmp 0x10075a45
mov ecx, dword [0x10339c08]
mov dword [ebp - 0x198], ecx
cmp dword [0x100d32c8], 0
je 0x10075ce2
mov dword [ebp - 4], 4
movsx eax, byte [str.OReserved.PlatformS]
cdq
push edx
push eax
mov edx, dword [ebp - 0x8c]
push edx
mov eax, dword [ebp - 0x90]
push eax
call fcn.100a25b0
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
mov ecx, dword [ebp - 0x3c]
add ecx, 1
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x28dc], edx
not ecx
movsx eax, byte [ebp - 0x14]
not eax
cdq
mov esi, eax
add esi, ecx
movzx eax, word [ebp - 0x20]
cdq
mov edi, eax
add edi, esi
not edi
movsx eax, byte [0x100d323e]
imul eax, dword [0x100d32c8]
cdq
mov ecx, dword [ebp - 0x64]
push ecx
mov ecx, dword [ebp - 0x68]
push ecx
push edx
push eax
call fcn.100a25b0
add eax, edi
mov dword [0x100d32e8], eax
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
mov eax, dword [ebp - 0x48]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x48], eax
movzx edx, word [ebp - 0x24]
test edx, edx
je 0x10075bf8
mov eax, dword [0x100d3308]
mov ecx, dword [0x100d330c]
mov dword [ebp - 0xf64], eax
mov dword [ebp - 0xf60], ecx
jmp 0x10075c0c
movzx eax, word [0x100d3310]
cdq
mov dword [ebp - 0xf64], eax
mov dword [ebp - 0xf60], edx
mov dl, byte [ebp - 0xf64]
mov byte [0x100d3217], dl
jmp 0x10075ccd
mov dword [ebp - 4], 0xffffffff
jmp 0x10075cdd
jmp 0x10075d6a
movzx ecx, word [0x100d32cc]
movzx edx, byte [0x100d31c6]
sub edx, ecx
movzx eax, byte [0x100d31c6]
add eax, edx
mov byte [0x100d31c6], al
movsx eax, byte [str.OReserved.PlatformS]
cdq
add eax, dword [0x100d32d8]
adc edx, dword [0x100d32dc]
add eax, dword [0x100d32d8]
adc edx, dword [0x100d32dc]
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], edx
xor ecx, ecx
mov dword [ebp - 0x58], 0xa0ed
mov dword [ebp - 0x54], ecx
movzx edx, word [ebp - 0x20]
movsx eax, word [ebp - 0x1c]
xor eax, edx
mov word [ebp - 0x1c], ax
movsx eax, word [0x100d32f0]
cdq
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
not ecx
not esi
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], esi
mov edx, dword [ebp - 0x90]
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x198]
add eax, 0x3d9
mov dword [ebp - 0xd04], eax
mov ecx, dword [0x100d3328]
xor edx, edx
mov dword [ebp - 0x17c8], ecx
mov dword [ebp - 0x17c4], edx
mov eax, dword [ebp - 0x64]
cmp eax, dword [ebp - 0x17c4]
jb 0x10075fa7
ja 0x10075daf
mov ecx, dword [ebp - 0x68]
cmp ecx, dword [ebp - 0x17c8]
jb 0x10075fa7
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x17d0], edx
mov dword [ebp - 0x17cc], eax
mov ecx, dword [ebp - 0x17d0]
or ecx, dword [ebp - 0x17cc]
jne 0x10075de2
cmp dword [ebp - 0x48], 0
jne 0x10075de2
xorps xmm0, xmm0
movlpd qword [ebp - 0xf6c], xmm0
jmp 0x10075df4
xor edx, edx
mov dword [ebp - 0xf6c], 1
mov dword [ebp - 0xf68], edx
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x4c]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x17d8], ecx
mov dword [ebp - 0x17d4], esi
mov edx, dword [ebp - 0x17d4]
cmp edx, dword [ebp - 0xf68]
jb 0x10075e39
ja 0x10075e2d
mov eax, dword [ebp - 0x17d8]
cmp eax, dword [ebp - 0xf6c]
jb 0x10075e39
mov dword [ebp - 0x3cc], 1
jmp 0x10075e43
mov dword [ebp - 0x3cc], 0
movzx ecx, byte [ebp - 0x12]
movzx edx, word [0x100d32d0]
cmp edx, ecx
jl 0x10075e5e
mov dword [ebp - 0x3c8], 1
jmp 0x10075e68
mov dword [ebp - 0x3c8], 0
movzx eax, word [ebp - 0x24]
imul eax, dword [ebp - 0x3c8]
test eax, eax
jne 0x10075e83
mov dword [ebp - 0x3d0], 1
jmp 0x10075e8d
mov dword [ebp - 0x3d0], 0
mov ecx, dword [ebp - 0x3cc]
cmp ecx, dword [ebp - 0x3d0]
jle 0x10075f26
movsx eax, byte [0x100d323e]
cdq
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
add ecx, eax
adc esi, edx
mov dword [0x100d32f8], ecx
mov dword [0x100d32fc], esi
mov byte [0x100d323e], 0x9b
mov edx, 0x88
mov word [0x100d32bc], dx
movsx eax, word [ebp - 0x28]
sub eax, 0x4a2eef21
movsx ecx, byte [0x10339c0c]
sub ecx, eax
mov byte [0x10339c0c], cl
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x28e0], edx
movzx eax, word [0x100d3310]
cdq
add eax, ecx
mov word [0x100d3310], ax
mov eax, 2
imul ecx, eax, 0xc
movzx edx, word [ecx + 0x10339c10]
movsx eax, word [ebp - 0x28]
imul eax, edx
mov word [ebp - 0x28], ax
jmp 0x10075fa5
movsx eax, word [0x100d32bc]
cdq
mov ecx, 8
imul ecx, ecx, 0x78ef
mov dword [ecx + 0x10619e88], eax
mov dword [ecx + 0x10619e8c], edx
movzx edx, byte [0x100d31c6]
movsx eax, byte [ebp - 0x14]
imul eax, edx
movsx ecx, byte [ebp - 0x14]
sub ecx, eax
mov byte [ebp - 0x14], cl
movzx edx, word [0x100d32d0]
add edx, 0x5bf99294
mov word [ebp - 0x20], dx
movzx eax, byte [ebp - 0x15]
add eax, 0x67938b26
mov byte [0x100d31c6], al
mov eax, dword [0x100d3308]
mov edx, dword [0x100d330c]
mov cl, 4
call fcn.100a26c0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
movzx ecx, byte [ebp - 0x11]
imul edx, ecx, 0x40c4b65e
mov eax, dword [ebp - 0x3c]
add eax, edx
mov dword [ebp - 0x3c], eax
jmp 0x1007601a
movsx ecx, word [0x100d32f4]
sar ecx, 3
mov word [ebp - 0x20], cx
mov edx, dword [ebp - 0x90]
add edx, 0xa5
mov eax, dword [ebp - 0x8c]
adc eax, 0
add edx, dword [ebp - 0x44]
adc eax, dword [ebp - 0x40]
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x68]
not ecx
movsx eax, word [ebp - 0x28]
not eax
cdq
and eax, ecx
mov dword [ebp - 0x48], eax
mov eax, dword [0x100d3300]
cdq
mov ecx, eax
sub ecx, 0xf7ee8f84
movzx eax, word [ebp - 0x2c]
cdq
add eax, ecx
mov word [ebp - 0x2c], ax
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x28e4], eax
mov ecx, 1
imul eax, ecx, 0x4b
mov byte [eax + 0x1069f780], dl
mov ecx, dword [ebp - 0x198]
add ecx, 0x2e0
mov dword [ebp - 0x28e8], ecx
movzx edx, byte [ebp - 0x11]
movsx eax, word [ebp - 0x1c]
cmp eax, edx
jl 0x1007604f
movzx ecx, word [0x100d3310]
test ecx, ecx
jne 0x1007604f
mov dword [ebp - 0x3d8], 0
jmp 0x10076059
mov dword [ebp - 0x3d8], 1
movsx eax, byte [ebp - 0x13]
cdq
mov dword [ebp - 0x17e0], eax
mov dword [ebp - 0x17dc], edx
mov edx, dword [ebp - 0x17dc]
cmp edx, dword [ebp - 0x6c]
ja 0x10076092
jb 0x10076082
mov eax, dword [ebp - 0x17e0]
cmp eax, dword [ebp - 0x70]
ja 0x10076092
xor ecx, ecx
jne 0x10076092
mov dword [ebp - 0x3d4], 0
jmp 0x1007609c
mov dword [ebp - 0x3d4], 1
mov edx, dword [ebp - 0x3d4]
not edx
cmp dword [ebp - 0x3d8], edx
jge 0x1007638e
movsx eax, word [ebp - 0x28]
cdq
mov dword [ebp - 0x17e8], eax
mov dword [ebp - 0x17e4], edx
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x17e4]
jg 0x100760e5
jl 0x100760d9
mov ecx, dword [ebp - 0x44]
cmp ecx, dword [ebp - 0x17e8]
ja 0x100760e5
mov dword [ebp - 0x3dc], 1
jmp 0x100760ef
mov dword [ebp - 0x3dc], 0
cmp dword [ebp - 0x40], 0
jg 0x10076109
jl 0x100760fd
cmp dword [ebp - 0x44], 0x55
ja 0x10076109
mov dword [ebp - 0x3e0], 1
jmp 0x10076113
mov dword [ebp - 0x3e0], 0
mov edx, dword [ebp - 0x3dc]
cmp edx, dword [ebp - 0x3e0]
jge 0x10076283
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
push 0x49bbc
push 0xeccbb14e
push ecx
push eax
call fcn.100a25b0
mov dword [0x100d32f8], eax
mov dword [0x100d32fc], edx
push 0
push 0xeb514fef
mov edx, dword [ebp - 0x64]
push edx
mov eax, dword [ebp - 0x68]
push eax
call fcn.100a25b0
mov dword [ebp - 0x17f0], eax
mov dword [ebp - 0x17ec], edx
mov ecx, dword [ebp - 0x17f0]
or ecx, dword [ebp - 0x17ec]
jne 0x10076181
mov dword [ebp - 0x3e8], 1
jmp 0x1007618b
mov dword [ebp - 0x3e8], 0
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x17f8], edx
mov dword [ebp - 0x17f4], eax
mov ecx, dword [ebp - 0x17f8]
or ecx, dword [ebp - 0x17f4]
jne 0x100761bf
xor edx, edx
mov dword [ebp - 0xf74], 1
mov dword [ebp - 0xf70], edx
jmp 0x100761ca
xorps xmm0, xmm0
movlpd qword [ebp - 0xf74], xmm0
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
add eax, dword [ebp - 0xf74]
adc ecx, dword [ebp - 0xf70]
mov dword [ebp - 0x1800], eax
mov dword [ebp - 0x17fc], ecx
mov edx, dword [ebp - 0x1800]
or edx, dword [ebp - 0x17fc]
jne 0x10076202
mov dword [ebp - 0x3e4], 1
jmp 0x1007620c
mov dword [ebp - 0x3e4], 0
movzx eax, word [0x100d32d0]
xor eax, dword [0x100d32e8]
mov ecx, dword [ebp - 0x3e4]
sub ecx, eax
mov edx, dword [0x100d32e8]
add edx, dword [ebp - 0x3e8]
not edx
sub edx, ecx
mov word [0x100d3310], dx
mov eax, dword [0x100d32ec]
add eax, 0xb9
mov word [ebp - 0x1c], ax
movzx eax, word [0x100d32d0]
sub eax, 0x572eb370
cdq
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov ecx, 2
imul edx, ecx, 0x8c
movsx eax, word [edx + 0x1069f800]
cdq
add eax, dword [ebp - 0x84]
adc edx, dword [ebp - 0x80]
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
jmp 0x10076389
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x1808], eax
mov dword [ebp - 0x1804], ecx
mov edx, dword [ebp - 0x1808]
or edx, dword [ebp - 0x1804]
je 0x10076389
movsx eax, word [0x100d32f0]
movsx ecx, byte [ebp - 0x14]
add ecx, eax
mov byte [ebp - 0x14], cl
movsx edx, byte [0x100d3266]
test edx, edx
jne 0x100762ce
mov dword [ebp - 0x3ec], 1
jmp 0x100762d8
mov dword [ebp - 0x3ec], 0
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
push 0
push 0
push ecx
push eax
call fcn.100a25b0
mov ecx, dword [0x100d32e8]
xor esi, esi
add ecx, eax
adc esi, edx
movsx edx, word [0x100d3338]
movsx eax, byte [0x10339c0c]
imul eax, edx
movzx edx, word [ebp - 0x20]
add edx, dword [ebp - 0x3ec]
and eax, edx
cdq
or eax, ecx
or edx, esi
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x28ec], ecx
mov edx, 1
imul ecx, edx, 0x71c1
mov byte [ecx + 0x105cba00], al
push 0
push 0x336a1a6d
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x44]
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [0x100d3266]
cdq
sub eax, ecx
mov byte [0x100d3266], al
mov edx, dword [0x100d32ec]
xor edx, 0xcf
mov eax, dword [0x100d3328]
add eax, edx
mov dword [0x100d3328], eax
mov ecx, dword [0x100d32ec]
add ecx, dword [ebp - 0x88]
mov dword [ebp - 0x88], ecx
jmp 0x1007642a
movzx edx, byte [ebp - 0x11]
not edx
test edx, edx
je 0x1007642a
movsx eax, word [ebp - 0x28]
sub eax, 0xfa78
mov byte [0x100d323f], al
movsx eax, byte [str.OReserved.PlatformS]
cdq
add eax, 0x429f7a11
mov word [ebp - 0x20], ax
mov ecx, dword [ebp - 0x54]
mov edx, dword [0x100d3328]
xor eax, eax
add edx, dword [ebp - 0x58]
adc eax, ecx
mov dword [0x100d3308], edx
mov dword [0x100d330c], eax
mov ecx, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
mov dword [ebp - 0x28f0], edx
mov eax, dword [ebp - 0x7c]
cdq
sub eax, ecx
mov dword [ebp - 0x7c], eax
movsx eax, word [ebp - 0x28]
test eax, eax
je 0x1007640f
movsx eax, word [0x100d32f0]
cdq
mov dword [ebp - 0xf7c], eax
mov dword [ebp - 0xf78], edx
jmp 0x10076421
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0xf7c], ecx
mov dword [ebp - 0xf78], edx
mov al, byte [ebp - 0xf7c]
mov byte [ebp - 0x14], al
mov ecx, dword [ebp - 0x198]
add ecx, 0x2dc
mov dword [ebp - 0x15e0], ecx
movsx eax, byte [str.OReserved.PlatformS]
cdq
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
mov dword [ebp - 0x1810], ecx
mov dword [ebp - 0x180c], esi
mov dword [ebp - 0x1818], eax
mov dword [ebp - 0x1814], edx
mov edx, dword [ebp - 0x180c]
cmp edx, dword [ebp - 0x1814]
jl 0x1007648c
jg 0x10076480
mov eax, dword [ebp - 0x1810]
cmp eax, dword [ebp - 0x1818]
jb 0x1007648c
mov dword [ebp - 0x3f0], 1
jmp 0x10076496
mov dword [ebp - 0x3f0], 0
mov ecx, dword [0x100d32ec]
not ecx
xor edx, edx
mov eax, dword [0x100d32e0]
not eax
mov esi, dword [0x100d32e4]
not esi
mov dword [ebp - 0x1820], eax
mov dword [ebp - 0x181c], esi
mov dword [ebp - 0x1828], ecx
mov dword [ebp - 0x1824], edx
mov ecx, dword [ebp - 0x181c]
cmp ecx, dword [ebp - 0x1824]
jb 0x100764f1
ja 0x100764e5
mov edx, dword [ebp - 0x1820]
cmp edx, dword [ebp - 0x1828]
jb 0x100764f1
mov dword [ebp - 0x3f4], 1
jmp 0x100764fb
mov dword [ebp - 0x3f4], 0
mov eax, dword [ebp - 0x3f0]
cmp eax, dword [ebp - 0x3f4]
je 0x10076713
xor ecx, ecx
mov dword [ebp - 0x90], 1
mov dword [ebp - 0x8c], ecx
mov edx, dword [0x100d3318]
sub edx, 0x7b
mov word [ebp - 0x1c], dx
movsx eax, byte [0x10339c0c]
movzx ecx, word [0x100d32d0]
imul ecx, eax
movzx edx, word [0x100d32d0]
imul edx, ecx
mov word [0x100d32d0], dx
mov eax, dword [0x100d3330]
or eax, dword [0x100d3334]
jne 0x10076567
mov dword [ebp - 0x3f8], 1
jmp 0x10076571
mov dword [ebp - 0x3f8], 0
movzx ecx, word [ebp - 0x2c]
imul ecx, dword [ebp - 0x3f8]
mov byte [0x10339c0c], cl
mov edx, dword [0x100d3328]
xor eax, eax
mov ecx, dword [0x100d330c]
push ecx
mov ecx, dword [0x100d3308]
push ecx
push eax
push edx
call fcn.100a25b0
mov dword [0x100d3328], eax
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
not edx
not eax
mov ecx, dword [0x100d32dc]
push ecx
mov ecx, dword [0x100d32d8]
push ecx
push eax
push edx
call fcn.100a25b0
mov esi, eax
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
not edx
not eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x34]
push eax
push edx
push edi
push ecx
call fcn.100a25b0
sub eax, esi
mov word [ebp - 0x20], ax
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xe10], edx
mov dword [ebp - 0xe0c], eax
mov ecx, dword [ebp - 0xe10]
or ecx, dword [ebp - 0xe0c]
je 0x10076625
cmp dword [ebp - 0xe10], 1
jne 0x10076620
cmp dword [ebp - 0xe0c], 0
je 0x100766a5
jmp 0x10076711
movzx eax, word [ebp - 0x20]
cdq
push 0x89a21
push 0xba91a14f
push edx
push eax
call fcn.100a25b0
mov ecx, dword [0x100d32d8]
sub ecx, eax
mov eax, dword [0x100d32dc]
sbb eax, edx
mov dword [0x100d32d8], ecx
mov dword [0x100d32dc], eax
movsx ecx, byte [0x100d3217]
sub ecx, 0x36c02346
mov word [0x100d32cc], cx
mov dword [0x100d32ec], 0xa76b6018
movsx eax, word [0x100d3338]
cdq
push 0xab425
push 0xedf21442
push edx
push eax
call fcn.100a25b0
add eax, dword [0x100d3308]
adc edx, dword [0x100d330c]
mov dword [0x100d3308], eax
mov dword [0x100d330c], edx
jmp 0x10076711
mov edx, 1
imul eax, edx, 0x4b
movzx ecx, byte [eax + 0x104c4c30]
mov dword [0x100d32c8], ecx
mov eax, dword [ebp - 0x7c]
sub eax, 0x79
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov edx, dword [ebp - 0x70]
add edx, 0x57
mov byte [0x100d31ef], dl
movzx eax, byte [ebp - 0x11]
imul eax, dword [0x100d32c8]
mov ecx, dword [0x100d32c8]
sub ecx, eax
mov dword [0x100d32c8], ecx
movzx edx, word [0x100d32cc]
mov eax, 0xd4027351
sub eax, edx
mov word [ebp - 0x1c], ax
movsx eax, byte [0x100d31c7]
sub eax, 0x47059989
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
jmp 0x10076784
movsx eax, byte [0x100d31ef]
cdq
add eax, 0x7265060a
adc edx, 0x97d5e
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
movzx eax, byte [0x100d323f]
cdq
sub eax, 0x9efd6a69
mov byte [0x100d323e], al
movsx eax, byte [0x10339c0c]
cdq
add eax, 0xb12d69fc
mov word [0x100d32d0], ax
mov eax, dword [ebp - 0x48]
cdq
mov ecx, eax
sub ecx, dword [0x100d3318]
mov eax, dword [ebp - 0x48]
cdq
sub eax, ecx
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], eax
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x28f4], edx
mov dword [0x100d3300], ecx
mov eax, dword [0x10339c08]
mov dword [ebp - 0x1a0], eax
movzx ecx, word [ebp - 0x24]
movsx edx, byte [0x100d323e]
cmp edx, ecx
jne 0x100767aa
mov dword [ebp - 0x3fc], 1
jmp 0x100767b4
mov dword [ebp - 0x3fc], 0
movsx eax, byte [0x100d323e]
cmp eax, 0x51
jne 0x100767cc
mov dword [ebp - 0x400], 1
jmp 0x100767d6
mov dword [ebp - 0x400], 0
mov ecx, dword [ebp - 0x3fc]
cmp ecx, dword [ebp - 0x400]
jg 0x10076931
push 0
push 0x96
push 0
push 0
movsx eax, byte [0x100d31ef]
cdq
push edx
push eax
mov edx, dword [0x100d330c]
push edx
mov eax, dword [0x100d3308]
push eax
push 0
push 0
push 0
push 0x8e
call fcn.1009f490
add esp, 0x30
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], edx
mov ecx, dword [ebp - 0x84]
or ecx, dword [ebp - 0x80]
je 0x1007692c
mov dword [ebp - 0x19c], 0x135
jmp 0x10076850
mov edx, dword [ebp - 0x19c]
sub edx, 1
mov dword [ebp - 0x19c], edx
cmp dword [ebp - 0x19c], 0
jle 0x1007692c
mov eax, 2
imul ecx, eax, 0x59
mov dx, word [0x100d32d0]
mov word [ecx + 0x10619d18], dx
mov eax, 0x46979
mov dword [0x100d32f8], 0xde96b61a
mov dword [0x100d32fc], eax
movzx ecx, byte [ebp - 0x12]
movsx edx, word [ebp - 0x1c]
and edx, ecx
movsx eax, byte [0x10339c0c]
movsx ecx, byte [str.OReserved.PlatformS]
add ecx, eax
imul ecx, edx
test ecx, ecx
jne 0x100768b4
mov dword [ebp - 0x404], 1
jmp 0x100768be
mov dword [ebp - 0x404], 0
movsx edx, word [ebp - 0x28]
movsx eax, word [0x100d32bc]
sub eax, edx
imul eax, dword [ebp - 0x404]
mov word [ebp - 0x2c], ax
mov ecx, dword [ebp - 0x68]
add ecx, 0x91887f0
mov byte [str.OReserved.PlatformS], cl
mov edx, 0xd093
mov word [0x100d3310], dx
mov eax, dword [ebp - 0x70]
add eax, dword [0x100d3320]
mov ecx, dword [ebp - 0x6c]
adc ecx, dword [0x100d3324]
add eax, dword [ebp - 0x70]
adc ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], ecx
mov edx, dword [ebp - 0x84]
add edx, 1
mov eax, dword [ebp - 0x80]
adc eax, 0
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], eax
jmp 0x10076841
jmp 0x10076a51
movsx ecx, byte [0x100d31c7]
test ecx, ecx
jne 0x10076950
xor edx, edx
mov dword [ebp - 0xf84], 1
mov dword [ebp - 0xf80], edx
jmp 0x1007695b
xorps xmm0, xmm0
movlpd qword [ebp - 0xf84], xmm0
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
not ecx
not esi
add ecx, dword [ebp - 0xf84]
adc esi, dword [ebp - 0xf80]
mov eax, dword [ebp - 0x7c]
cdq
mov edi, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x34]
sub edi, eax
sbb ebx, edx
push esi
push ecx
push ebx
push edi
call fcn.100a25b0
mov word [0x100d3338], ax
movzx edx, byte [ebp - 0x15]
test edx, edx
jne 0x100769aa
xor eax, eax
mov dword [ebp - 0x1830], 1
mov dword [ebp - 0x182c], eax
jmp 0x100769b5
xorps xmm0, xmm0
movlpd qword [ebp - 0x1830], xmm0
movzx ecx, byte [ebp - 0x15]
mov edx, dword [0x100d3328]
not edx
imul edx, ecx
xor eax, eax
mov ecx, dword [ebp - 0x80]
push ecx
mov ecx, dword [ebp - 0x84]
push ecx
push eax
push edx
call fcn.100a25b0
add eax, dword [ebp - 0x1830]
mov word [0x100d3304], ax
movsx eax, word [0x100d32bc]
cdq
sub eax, 0x34fcc0d9
sbb edx, 0xbfe01
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
movzx eax, word [0x100d32d0]
xor eax, 0x5c
cdq
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
push 0xee08a
push 0x1b55dc88
mov edx, dword [0x100d32e4]
push edx
mov eax, dword [0x100d32e0]
push eax
call fcn.100a25b0
mov dword [ebp - 0x7c], eax
movsx eax, byte [str.OReserved.PlatformS]
xor eax, 0x8d
cdq
add eax, dword [0x100d3330]
adc edx, dword [0x100d3334]
mov dword [0x100d3330], eax
mov dword [0x100d3334], edx
mov ecx, dword [ebp - 0x1a0]
add ecx, 0x1e6
mov dword [ebp - 0x28f8], ecx
movzx edx, word [ebp - 0x24]
test edx, edx
je 0x10076cf6
movsx eax, byte [0x100d3217]
cdq
push edx
push eax
push 0
push 0x8f
push 0
push 0x71
mov eax, dword [0x100d32c8]
cdq
push edx
push eax
mov eax, dword [0x100d32dc]
push eax
mov ecx, dword [0x100d32d8]
push ecx
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x44]
push eax
call fcn.1009f490
add esp, 0x30
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x1838], ecx
mov dword [ebp - 0x1834], edx
cmp dword [ebp - 0x1834], 0
ja 0x10076ad7
cmp dword [ebp - 0x1838], 0
jb 0x10076cf6
push 0
push 0x7c
push 0
push 0
mov eax, dword [0x100d32fc]
push eax
mov ecx, dword [0x100d32f8]
push ecx
mov edx, dword [0x100d32dc]
push edx
mov eax, dword [0x100d32d8]
push eax
push 0
push 0xf1
movsx eax, byte [0x100d31ef]
cdq
push edx
push eax
call fcn.1009f490
add esp, 0x30
mov dword [0x100d3328], eax
cmp dword [0x100d3328], 0
ja 0x10076c72
movzx ecx, byte [ebp - 0x15]
movsx edx, word [ebp - 0x1c]
imul edx, ecx
movsx eax, word [ebp - 0x1c]
sub eax, edx
mov word [ebp - 0x1c], ax
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
push 0
push 0x6d
push edx
push ecx
call fcn.100a25b0
mov byte [0x10339c0c], al
cmp dword [0x100d3328], 0
jne 0x10076b64
mov dword [ebp - 0x408], 1
jmp 0x10076b6e
mov dword [ebp - 0x408], 0
movzx eax, word [0x100d3304]
imul eax, dword [ebp - 0x408]
cdq
mov ecx, eax
mov esi, edx
movsx eax, word [0x100d3338]
cdq
mov edi, eax
mov ebx, edx
mov eax, dword [0x100d32d8]
not eax
mov edx, dword [0x100d32dc]
not edx
mov dword [ebp - 0x162c], ecx
movsx ecx, word [ebp - 0x1c]
mov dword [ebp - 0x1624], eax
mov eax, ecx
mov dword [ebp - 0x1628], edx
cdq
mov ecx, dword [ebp - 0x1624]
add eax, ecx
mov ecx, dword [ebp - 0x1628]
adc edx, ecx
add eax, edi
adc edx, ebx
push esi
mov ecx, dword [ebp - 0x162c]
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [0x100d32c8], eax
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, dword [0x100d3324]
push ecx
mov ecx, dword [0x100d3320]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [ebp - 0x13]
cdq
sub eax, ecx
mov byte [ebp - 0x13], al
movsx edx, byte [0x100d3217]
test edx, edx
jne 0x10076c1a
mov dword [ebp - 0x40c], 1
jmp 0x10076c24
mov dword [ebp - 0x40c], 0
movsx eax, byte [0x100d3266]
mov ecx, dword [ebp - 0x40c]
sub ecx, eax
not ecx
mov eax, ecx
cdq
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
movzx eax, word [ebp - 0x20]
cdq
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
and ecx, eax
and esi, edx
mov edx, dword [0x100d32f8]
mov eax, dword [0x100d32fc]
or edx, ecx
or eax, esi
mov dword [0x100d32f8], edx
mov dword [0x100d32fc], eax
jmp 0x10076cf6
mov ecx, dword [ebp - 0x7c]
add ecx, 0xb1
movzx edx, word [ebp - 0x30]
sub edx, ecx
mov word [ebp - 0x30], dx
movzx eax, word [0x100d3310]
cdq
mov ecx, dword [0x100d3320]
sub ecx, eax
mov eax, dword [0x100d3324]
sbb eax, edx
or ecx, dword [0x100d3320]
or eax, dword [0x100d3324]
mov dword [0x100d3320], ecx
mov dword [0x100d3324], eax
xor ecx, ecx
mov dword [ebp - 0x70], 0x66cb
mov dword [ebp - 0x6c], ecx
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x28fc], edx
movzx eax, byte [ebp - 0x12]
cdq
sub eax, ecx
mov byte [ebp - 0x12], al
mov eax, 1
imul ecx, eax, 0x3a6e
movzx edx, byte [ecx + 0x1068b6b8]
movsx eax, word [0x100d32f4]
sub eax, edx
mov word [0x100d32f4], ax
mov ecx, dword [ebp - 0x1a0]
add ecx, 0x347
mov dword [ebp - 0xd44], ecx
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x2900], edx
movsx eax, word [ebp - 0x28]
cdq
add eax, ecx
mov word [ebp - 0x28], ax
movsx eax, byte [0x10339c0c]
cdq
add eax, 0x1e4211fd
mov word [0x100d32f0], ax
movsx eax, word [0x100d32f4]
cdq
mov ecx, 8
imul ecx, ecx, 0x6a1a
mov esi, dword [ecx + 0x10619e8c]
push esi
mov ecx, dword [ecx + 0x10619e88]
push ecx
push edx
push eax
call fcn.100a25b0
mov word [0x100d32f4], ax
mov edx, 2
imul eax, edx, 0x798
movsx eax, word [eax + 0x10502308]
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
xor ecx, ecx
mov dword [ebp - 0x58], 0x79f0
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x1a0]
add edx, 0x143
mov dword [ebp - 0xd40], edx
call dword [sym.imp.USER32.dll_GetShellWindow]
xor ecx, ecx
mov dword [0x100d32c0], eax
mov dword [0x100d32c4], ecx
mov dword [ebp - 0x94], 0
xor edx, edx
mov byte [ebp - 0xd5], dl
push 0
push 0
push 0
lea eax, [ebp - 0x2bb6]
push eax
lea ecx, [ebp - 0xd5]
call fcn.10071d70
mov ecx, eax
call fcn.10052040
push eax
call fcn.10071bf0
add esp, 8
call eax
mov dword [ebp - 0x94], eax
movzx eax, word [ebp - 0x24]
cdq
push 0xac4d5
push 0x36e8d7ea
push edx
push eax
call fcn.100a25b0
mov dword [0x100d3328], eax
mov ecx, dword [0x100d3300]
imul ecx, dword [ebp - 0x7c]
mov dword [0x100d3300], ecx
movzx edx, byte [ebp - 0x15]
imul eax, edx, 0xb043fad5
xor ecx, ecx
mov edx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
add edx, eax
adc esi, ecx
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], esi
movsx eax, word [ebp - 0x28]
movsx ecx, byte [ebp - 0x13]
add ecx, eax
mov byte [ebp - 0x13], cl
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x1840], edx
mov dword [ebp - 0x183c], eax
mov ecx, dword [ebp - 0x1840]
or ecx, dword [ebp - 0x183c]
je 0x10076e77
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xf8c], edx
mov dword [ebp - 0xf88], eax
jmp 0x10076e88
movzx eax, word [ebp - 0x2c]
cdq
mov dword [ebp - 0xf8c], eax
mov dword [ebp - 0xf88], edx
mov cl, byte [ebp - 0xf8c]
mov byte [0x100d323e], cl
mov edx, dword [0x100d3330]
sub edx, dword [0x100d3320]
mov eax, dword [0x100d3334]
sbb eax, dword [0x100d3324]
mov ecx, dword [0x100d3330]
sub ecx, edx
mov edx, dword [0x100d3334]
sbb edx, eax
mov dword [0x100d3330], ecx
mov dword [0x100d3334], edx
cmp dword [ebp - 0x94], 0
jl 0x10076edd
cmp dword [ebp - 0x94], 1
jne 0x10077a3c
mov dword [ebp - 0x1a4], 0
jmp 0x10076ef8
mov eax, dword [ebp - 0x1a4]
add eax, 1
mov dword [ebp - 0x1a4], eax
cmp dword [ebp - 0x1a4], 0xc6
jge 0x10076f20
movzx ecx, word [ebp - 0x20]
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov byte [ebp - 0x11], al
mov dx, word [ebp - 0x30]
add dx, 1
mov word [ebp - 0x30], dx
jmp 0x10076ee9
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
movzx eax, word [ebp - 0x30]
cdq
mov dword [ebp - 0x1848], eax
mov dword [ebp - 0x1844], edx
mov dword [ebp - 0x1850], ecx
mov dword [ebp - 0x184c], esi
mov edx, dword [ebp - 0x1848]
cmp edx, dword [ebp - 0x1850]
jne 0x10076fc6
mov eax, dword [ebp - 0x1844]
cmp eax, dword [ebp - 0x184c]
jne 0x10076fc6
movsx eax, byte [0x100d31ef]
cdq
mov ecx, dword [ebp - 0x40]
push ecx
mov ecx, dword [ebp - 0x44]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [0x100d31ef]
cdq
add eax, ecx
mov byte [0x100d31ef], al
movzx eax, word [ebp - 0x2c]
cdq
mov dword [0x100d32c0], eax
mov dword [0x100d32c4], edx
mov byte [ebp - 0x14], 0x26
movzx edx, word [0x100d32d0]
movsx eax, byte [0x100d3217]
imul eax, edx
movsx ecx, byte [0x100d3217]
imul ecx, eax
mov byte [0x100d3217], cl
mov byte [ebp - 0x15], 0xc2
mov edx, dword [0x10339c08]
mov dword [ebp - 0x1ac], edx
cmp dword [ebp - 0x88], 0
je 0x10076fef
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0xe18], eax
mov dword [ebp - 0xe14], ecx
jmp 0x10077003
movzx eax, byte [0x100d31c6]
cdq
mov dword [ebp - 0xe18], eax
mov dword [ebp - 0xe14], edx
mov edx, dword [ebp - 0xe18]
mov eax, dword [ebp - 0xe14]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], eax
movzx ecx, word [0x100d3304]
add ecx, 0x52380d75
movzx edx, word [0x100d3304]
sub edx, ecx
mov word [0x100d3304], dx
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
mov dword [ebp - 0x2904], ecx
mov edx, 1
imul ecx, edx, 0x3e
mov byte [ecx + 0x105c3c10], al
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x2908], edx
mov eax, dword [ebp - 0x88]
cdq
mov esi, eax
sub esi, ecx
mov eax, dword [ebp - 0x88]
cdq
add eax, esi
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x1858], eax
mov dword [ebp - 0x1854], ecx
mov edx, dword [ebp - 0x1858]
or edx, dword [ebp - 0x1854]
je 0x100770a4
movzx eax, byte [0x100d31c6]
mov dword [ebp - 0x410], eax
jmp 0x100770b1
movsx ecx, byte [0x100d3216]
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x410]
mov dword [0x100d3300], edx
mov eax, dword [ebp - 0x1ac]
add eax, 0x13b
mov dword [ebp - 0x1640], eax
mov dword [ebp - 0x1a8], 0x3bb
jmp 0x100770e9
mov ecx, dword [ebp - 0x1a8]
sub ecx, 1
mov dword [ebp - 0x1a8], ecx
cmp dword [ebp - 0x1a8], 0
jle 0x10077197
movzx edx, word [0x100d32d0]
not edx
movsx eax, word [ebp - 0x1c]
sub eax, edx
cdq
mov ecx, eax
movsx eax, word [0x100d32bc]
cdq
add eax, dword [0x100d3308]
add eax, ecx
mov byte [ebp - 0x11], al
mov edx, dword [0x100d3318]
add edx, 0x6f7ef91
mov eax, dword [0x100d331c]
adc eax, 0x898b8
mov dword [0x100d3318], edx
mov dword [0x100d331c], eax
mov eax, dword [ebp - 0x88]
cdq
xor eax, dword [0x100d32c0]
xor edx, dword [0x100d32c4]
add eax, dword [0x100d32c0]
adc edx, dword [0x100d32c4]
mov dword [0x100d32c0], eax
mov dword [0x100d32c4], edx
movsx ecx, byte [0x100d31c7]
mov edx, dword [ebp - 0x48]
add edx, ecx
mov eax, dword [ebp - 0x48]
sub eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x7c]
shl ecx, 4
mov dword [ebp - 0x7c], ecx
mov dl, byte [0x100d323e]
add dl, 1
mov byte [0x100d323e], dl
jmp 0x100770da
mov eax, dword [ebp - 0x1ac]
add eax, 0x1af
mov dword [ebp - 0x163c], eax
mov ecx, dword [0x100d3330]
push ecx
call dword [sym.imp.USER32.dll_IsZoomed]
xor edx, edx
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x1ac]
add eax, 0x7f
mov dword [ebp - 0x1638], eax
call dword [sym.imp.USER32.dll_GetCursor]
mov dword [ebp - 0x1630], eax
mov dword [ebp - 0x1634], 0
cmp dword [ebp - 0x1630], 0
je 0x100771fe
mov ecx, dword [ebp - 0x1634]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov dword [ebp - 0x290c], eax
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x1860], edx
mov dword [ebp - 0x185c], eax
mov ecx, dword [ebp - 0x1860]
or ecx, dword [ebp - 0x185c]
je 0x10077307
movsx eax, byte [0x10339c0c]
cdq
mov dword [ebp - 0x1868], eax
mov dword [ebp - 0x1864], edx
mov edx, dword [0x100d3334]
cmp edx, dword [ebp - 0x1864]
jg 0x10077307
jl 0x1007725b
mov eax, dword [0x100d3330]
cmp eax, dword [ebp - 0x1868]
jae 0x10077307
movzx eax, word [0x100d32cc]
cdq
mov ecx, dword [0x100d32dc]
push ecx
mov ecx, dword [0x100d32d8]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movzx eax, word [0x100d32cc]
cdq
add eax, ecx
mov word [0x100d32cc], ax
mov edx, dword [ebp - 0x68]
or edx, dword [ebp - 0x64]
je 0x100772a6
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0xf94], eax
mov dword [ebp - 0xf90], ecx
jmp 0x100772bd
mov edx, dword [0x100d32e0]
mov eax, dword [0x100d32e4]
mov dword [ebp - 0xf94], edx
mov dword [ebp - 0xf90], eax
mov cl, byte [ebp - 0xf94]
mov byte [ebp - 0x11], cl
mov dword [0x100d3328], 0x5ac0c315
movsx eax, byte [0x100d3217]
cdq
xor eax, 0x8cfc92ca
xor edx, 0x5fd47
mov dword [0x100d3320], eax
mov dword [0x100d3324], edx
movzx eax, word [0x100d3304]
cdq
add eax, dword [0x100d3320]
mov word [0x100d3304], ax
jmp 0x10077686
movsx edx, word [0x100d3338]
test edx, edx
je 0x1007747e
mov ecx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x88]
cdq
add eax, ecx
adc edx, esi
mov dword [ebp - 0x1870], eax
mov dword [ebp - 0x186c], edx
mov edx, dword [ebp - 0x1870]
or edx, dword [ebp - 0x186c]
jne 0x1007734d
mov dword [ebp - 0x418], 1
jmp 0x10077357
mov dword [ebp - 0x418], 0
cmp dword [ebp - 0x48], 0
jne 0x10077371
xor eax, eax
mov dword [ebp - 0xf9c], 1
mov dword [ebp - 0xf98], eax
jmp 0x1007737c
xorps xmm0, xmm0
movlpd qword [ebp - 0xf9c], xmm0
mov ecx, dword [ebp - 0xf9c]
add ecx, 0xb32545df
mov edx, dword [ebp - 0xf98]
adc edx, 0xc0980
mov dword [ebp - 0x1878], ecx
mov dword [ebp - 0x1874], edx
mov eax, dword [ebp - 0x1878]
or eax, dword [ebp - 0x1874]
jne 0x100773ba
mov dword [ebp - 0x414], 1
jmp 0x100773c4
mov dword [ebp - 0x414], 0
mov ecx, dword [0x100d3328]
xor ecx, dword [ebp - 0x414]
movzx edx, word [ebp - 0x30]
add edx, dword [ebp - 0x418]
imul edx, ecx
xor eax, eax
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x2910], edx
mov esi, dword [0x100d3318]
sub esi, ecx
mov eax, dword [0x100d3318]
mov edx, dword [0x100d331c]
mov ecx, esi
call fcn.100a25f0
mov dword [0x100d3318], eax
mov dword [0x100d331c], edx
mov eax, dword [0x10339c08]
xor ecx, ecx
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], ecx
movzx edx, byte [0x100d31c6]
test edx, edx
je 0x10077442
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
mov dword [ebp - 0xfa4], eax
mov dword [ebp - 0xfa0], ecx
jmp 0x10077454
mov edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0xfa4], edx
mov dword [ebp - 0xfa0], eax
mov cx, word [ebp - 0xfa4]
mov word [ebp - 0x2c], cx
movsx eax, byte [str.OReserved.PlatformS]
cdq
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov byte [ebp - 0x15], al
jmp 0x10077686
movsx eax, byte [ebp - 0x14]
cdq
sub eax, dword [ebp - 0x68]
sbb edx, dword [ebp - 0x64]
mov dword [ebp - 0x1880], eax
mov dword [ebp - 0x187c], edx
mov edx, dword [ebp - 0x1880]
or edx, dword [ebp - 0x187c]
jne 0x100775ed
movzx eax, word [0x100d32cc]
xor eax, 0x30f4
cdq
mov ecx, dword [0x100d32e0]
sub ecx, eax
mov eax, dword [0x100d32e4]
sbb eax, edx
mov dword [0x100d32e0], ecx
mov dword [0x100d32e4], eax
movsx ecx, byte [0x100d31ef]
test ecx, ecx
jne 0x100774ed
xor edx, edx
mov dword [ebp - 0x1888], 1
mov dword [ebp - 0x1884], edx
jmp 0x100774f8
xorps xmm0, xmm0
movlpd qword [ebp - 0x1888], xmm0
mov ecx, dword [ebp - 0x1888]
sub ecx, dword [ebp - 0x44]
movzx eax, byte [0x100d323f]
cdq
mov esi, dword [0x100d32c0]
sub esi, eax
add esi, ecx
movzx edx, word [0x100d3304]
mov eax, 0x63
sub eax, edx
cdq
mov edi, eax
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
mov edx, dword [0x100d32f8]
mov ebx, dword [0x100d32fc]
push ecx
push eax
push ebx
push edx
call fcn.100a25b0
xor eax, edi
and eax, esi
mov byte [0x100d31ef], al
mov eax, dword [0x100d32c8]
sub eax, dword [ebp - 0x3c]
movzx ecx, word [ebp - 0x24]
mov edx, dword [0x100d32c8]
sub edx, ecx
sub edx, eax
jne 0x10077574
xor eax, eax
mov dword [ebp - 0x1890], 1
mov dword [ebp - 0x188c], eax
jmp 0x1007757f
xorps xmm0, xmm0
movlpd qword [ebp - 0x1890], xmm0
movzx eax, word [ebp - 0x20]
cdq
mov ecx, dword [ebp - 0x58]
mov esi, dword [ebp - 0x54]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
and eax, dword [ebp - 0x1890]
mov dword [ebp - 0x48], eax
mov edx, dword [0x100d32e8]
add edx, 0x2967ca6e
mov dword [ebp - 0x7c], edx
mov ecx, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
mov dword [ebp - 0x2914], edx
movsx eax, byte [0x100d3216]
cdq
mov esi, eax
sub esi, ecx
movsx eax, byte [0x100d3216]
cdq
sub eax, esi
mov byte [0x100d3216], al
movsx eax, byte [0x10339c0c]
sub eax, 0xb8
mov word [ebp - 0x2c], ax
jmp 0x10077686
mov ecx, dword [ebp - 0x90]
not ecx
mov edx, dword [ebp - 0x8c]
not edx
mov dword [ebp - 0x1898], ecx
mov dword [ebp - 0x1894], edx
mov eax, dword [ebp - 0x1898]
or eax, dword [ebp - 0x1894]
je 0x10077686
movzx eax, word [ebp - 0x24]
cdq
sub eax, 0xbb8558ee
mov word [ebp - 0x24], ax
movzx eax, word [ebp - 0x30]
cdq
add eax, 0xa8edde6a
adc edx, 0x5788d
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movsx ecx, word [0x100d32bc]
movzx edx, word [ebp - 0x20]
add edx, ecx
movsx eax, word [0x100d32f4]
not eax
mov ecx, dword [ebp - 0x48]
add ecx, eax
not ecx
sub ecx, edx
mov eax, ecx
cdq
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
push 0xdfedf
push 0xb483c279
push eax
push edx
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [ebp - 0x14]
cdq
or eax, ecx
mov byte [ebp - 0x14], al
mov edx, dword [ebp - 0x1638]
sub edx, dword [ebp - 0x163c]
imul eax, dword [ebp - 0x1640], 0xb8
imul ecx, eax, 0x34d
cmp ecx, edx
je 0x10077a3c
xor edx, edx
mov dword [ebp - 0x58], 0x6531f0fc
mov dword [ebp - 0x54], edx
mov eax, dword [0x100d32c0]
or eax, dword [0x100d32c4]
jne 0x100776cf
mov dword [ebp - 0x41c], 1
jmp 0x100776d9
mov dword [ebp - 0x41c], 0
movzx ecx, word [ebp - 0x30]
mov eax, 0x556e
sub eax, ecx
add eax, dword [ebp - 0x41c]
cdq
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
mov eax, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov cl, 1
call fcn.100a25f0
mov dword [0x100d3330], eax
mov dword [0x100d3334], edx
mov edx, dword [0x100d3320]
or edx, dword [0x100d3324]
jne 0x10077734
xor eax, eax
mov dword [ebp - 0x18a0], 1
mov dword [ebp - 0x189c], eax
jmp 0x1007773f
xorps xmm0, xmm0
movlpd qword [ebp - 0x18a0], xmm0
mov esi, dword [ebp - 0x18a0]
add esi, dword [ebp - 0x90]
mov eax, dword [0x100d32c8]
cdq
mov ecx, dword [0x100d32e4]
push ecx
mov ecx, dword [0x100d32e0]
push ecx
push edx
push eax
call fcn.100a25b0
add eax, esi
mov dword [0x100d32ec], eax
mov edx, dword [0x10339c08]
xor eax, eax
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], eax
movzx eax, word [0x100d32cc]
cdq
mov ecx, 8
imul ecx, ecx, 0x1e
mov dword [ecx + 0x105c3c80], eax
mov dword [ecx + 0x105c3c84], edx
movsx eax, byte [0x10339c0c]
cdq
push edx
push eax
push 0
push 0
push 0
push 0
push 0
push 0x8b
push 0
push 0
push 0
push 0x50
call fcn.1009f490
add esp, 0x30
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
mov edx, dword [ebp - 0x90]
or edx, dword [ebp - 0x8c]
je 0x100779d7
xorps xmm0, xmm0
movlpd qword [0x100d3330], xmm0
mov eax, dword [0x100d32c0]
or eax, dword [0x100d32c4]
jne 0x10077802
mov dword [ebp - 0x420], 1
jmp 0x1007780c
mov dword [ebp - 0x420], 0
mov ecx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x4c]
and ecx, dword [ebp - 0x68]
and esi, dword [ebp - 0x64]
movsx eax, byte [ebp - 0x14]
not eax
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
mov esi, edx
movzx edx, word [0x100d32d0]
movsx eax, byte [str.OReserved.PlatformS]
imul eax, edx
mov edx, dword [ebp - 0x420]
sub edx, eax
mov eax, edx
cdq
sub eax, ecx
sbb edx, esi
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
movzx eax, word [ebp - 0x24]
movzx ecx, byte [0x100d31c6]
imul ecx, eax
mov byte [0x100d31c6], cl
mov edx, dword [0x100d3328]
xor eax, eax
add edx, dword [ebp - 0x68]
adc eax, dword [ebp - 0x64]
mov dword [ebp - 0x18a8], edx
mov dword [ebp - 0x18a4], eax
mov ecx, dword [ebp - 0x18a8]
or ecx, dword [ebp - 0x18a4]
jne 0x1007789a
mov dword [ebp - 0x424], 1
jmp 0x100778a4
mov dword [ebp - 0x424], 0
mov edx, dword [ebp - 0x424]
mov dword [0x100d32e8], edx
movsx eax, byte [0x100d323e]
movzx ecx, byte [ebp - 0x15]
sub ecx, eax
movzx edx, byte [ebp - 0x15]
sub edx, ecx
mov byte [ebp - 0x15], dl
mov dword [ebp - 0x48], 0x326e
mov eax, dword [0x100d3330]
mov ecx, dword [0x100d3334]
mov dword [ebp - 0x18b0], eax
mov dword [ebp - 0x18ac], ecx
mov edx, dword [ebp - 0x18b0]
or edx, dword [ebp - 0x18ac]
je 0x100778f7
jmp 0x100779d5
mov eax, dword [ebp - 0x68]
sub eax, 1
mov ecx, dword [ebp - 0x64]
sbb ecx, 0
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], ecx
mov edx, dword [0x10339c08]
mov dword [ebp - 0x3c], edx
movsx ax, byte [0x100d3217]
mov word [ebp - 0x20], ax
movsx ecx, word [ebp - 0x28]
test ecx, ecx
jne 0x1007793a
xor edx, edx
mov dword [ebp - 0xfac], 1
mov dword [ebp - 0xfa8], edx
jmp 0x10077945
xorps xmm0, xmm0
movlpd qword [ebp - 0xfac], xmm0
mov esi, dword [ebp - 0x38]
mov edi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 0x70]
push ecx
mov edx, dword [ebp - 0xfa8]
push edx
mov eax, dword [ebp - 0xfac]
push eax
call fcn.100a25b0
sub eax, esi
sbb edx, edi
not eax
not edx
movzx ecx, byte [ebp - 0x11]
add ecx, dword [ebp - 0x3c]
xor esi, esi
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x74], esi
mov eax, dword [0x100d32c8]
cdq
mov ecx, eax
sub ecx, dword [0x100d3330]
mov eax, dword [0x100d32c8]
cdq
sub eax, ecx
mov dword [0x100d32c8], eax
movzx eax, word [0x100d32cc]
cdq
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
sub ecx, eax
sbb esi, edx
mov dword [0x100d32f8], ecx
mov dword [0x100d32fc], esi
jmp 0x10077a35
movsx edx, word [ebp - 0x28]
test edx, edx
je 0x10077a35
movzx eax, word [ebp - 0x20]
test eax, eax
je 0x10077a35
movsx eax, byte [0x100d31c7]
sub eax, 0x8bea
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movzx eax, word [ebp - 0x20]
cdq
add eax, 0xf482a166
mov dword [0x100d32ec], eax
mov ecx, dword [0x100d32e8]
add ecx, dword [ebp - 0x3c]
mov edx, dword [0x100d32e8]
add edx, ecx
mov dword [0x100d32e8], edx
imul eax, dword [ebp - 0x3c], 0x40d4f0f1
mov ecx, dword [0x100d3300]
sub ecx, eax
mov dword [0x100d3300], ecx
xor al, al
jmp 0x1009cf33
movzx edx, word [0x100d32f0]
push edx
push 0xfc
call fcn.1009d190
add esp, 8
mov byte [0x100d3216], al
movsx eax, byte [0x100d3216]
test eax, eax
je 0x10077b39
mov dword [ebp - 4], 6
movsx ecx, word [0x100d32bc]
imul edx, ecx, 0x73da0726
mov byte [0x100d31c6], dl
mov eax, dword [0x100d3330]
add eax, 0x1af105b8
mov ecx, dword [0x100d3334]
adc ecx, 0
mov edx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
push ecx
push eax
push esi
push edx
call fcn.100a25b0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov eax, 0x4447
mov word [0x100d3310], ax
movsx eax, word [0x100d32f0]
cdq
add eax, 0x3fb40b37
mov word [0x100d32d0], ax
mov ecx, 4
mov word [ebp - 0x24], cx
jmp 0x10077b24
mov dword [ebp - 4], 0xffffffff
jmp 0x10077b34
jmp 0x10077bdc
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x18b8], edx
mov dword [ebp - 0x18b4], eax
mov ecx, dword [ebp - 0x68]
cmp ecx, dword [ebp - 0x18b8]
jne 0x10077b61
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x18b4]
je 0x10077bdc
push 0x708e
push 0x756e394
mov eax, dword [0x100d331c]
push eax
mov ecx, dword [0x100d3318]
push ecx
call fcn.100a25b0
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
movzx edx, word [0x100d3310]
shl edx, 6
mov byte [ebp - 0x11], dl
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
push 0
push 0xcd08
push ecx
push eax
call fcn.100a25b0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
movzx edx, byte [0x100d323f]
movsx eax, byte [0x100d31c7]
sub eax, edx
movsx ecx, byte [0x100d31c7]
imul ecx, eax
mov byte [0x100d31c7], cl
mov edx, dword [ebp - 0x90]
sub edx, 0x606a
mov byte [0x10339c0c], dl
mov dword [ebp - 0xd0], 0
mov eax, dword [ebp - 0x44]
or eax, dword [ebp - 0x40]
je 0x10077c0a
mov ecx, dword [ebp - 0x3c]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
xor edx, edx
mov dword [0x100d3330], eax
mov dword [0x100d3334], edx
jmp 0x10077e47
mov eax, dword [0x100d3318]
or eax, dword [0x100d331c]
je 0x10077c7b
mov ecx, dword [0x100d32c8]
sar ecx, 1
mov word [ebp - 0x2c], cx
mov edx, dword [ebp - 0x70]
sub edx, 0x221f6208
mov dword [0x100d3300], edx
mov al, byte [ebp - 0x28]
mov byte [str.OReserved.PlatformS], al
mov ecx, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
mov dword [ebp - 0x291c], edx
xor ecx, 0x1e358200
mov byte [0x100d31c6], cl
mov eax, dword [0x100d32ec]
shl eax, 7
mov word [ebp - 0x24], ax
mov ecx, dword [0x100d3330]
mov edx, dword [0x100d3334]
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], edx
jmp 0x10077e47
cmp dword [ebp - 0x3c], 0
jne 0x10077caf
movsx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [ebp - 0x6c]
push ecx
mov ecx, dword [ebp - 0x70]
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x18c0], eax
mov dword [ebp - 0x18bc], edx
mov edx, dword [ebp - 0x18c0]
or edx, dword [ebp - 0x18bc]
je 0x10077cee
movsx eax, byte [ebp - 0x13]
sar eax, 7
mov byte [0x100d323f], al
mov ecx, 2
mov word [ebp - 0x20], cx
mov edx, dword [ebp - 0x70]
mov eax, 4
imul ecx, eax, 0xf433
mov dword [ecx + 0x104c4c80], edx
movzx edx, word [0x100d3310]
movsx eax, word [ebp - 0x28]
sub eax, edx
mov word [ebp - 0x20], ax
jmp 0x10077e47
movsx ecx, byte [0x100d3216]
test ecx, ecx
je 0x10077e47
mov edx, dword [0x100d32d8]
or edx, dword [0x100d32dc]
je 0x10077e47
mov al, byte [0x10339c08]
mov byte [0x100d3266], al
mov ecx, 2
imul edx, ecx, 0x1c
movzx eax, word [edx + 0x10339c10]
movzx ecx, word [0x100d32d0]
or ecx, eax
mov word [0x100d32d0], cx
mov ecx, dword [0x100d3320]
xor ecx, dword [0x100d3318]
mov esi, dword [0x100d3324]
xor esi, dword [0x100d331c]
movzx eax, byte [0x100d31c6]
cdq
mov edi, dword [ebp - 0x44]
sub edi, eax
mov eax, dword [ebp - 0x40]
sbb eax, edx
add edi, ecx
adc eax, esi
mov dword [ebp - 0x18c8], edi
mov dword [ebp - 0x18c4], eax
mov ecx, dword [ebp - 0x18c8]
or ecx, dword [ebp - 0x18c4]
jne 0x10077d8c
mov dword [ebp - 0x428], 1
jmp 0x10077d96
mov dword [ebp - 0x428], 0
movsx edx, byte [ebp - 0x14]
sub edx, dword [ebp - 0x428]
jne 0x10077db0
mov eax, 1
mov word [ebp - 0x128], ax
jmp 0x10077db9
xor ecx, ecx
mov word [ebp - 0x128], cx
mov dx, word [ebp - 0x128]
mov word [ebp - 0x20], dx
mov eax, dword [0x100d32f8]
mov ecx, dword [0x100d32fc]
mov dword [ebp - 0x18d0], eax
mov dword [ebp - 0x18cc], ecx
mov edx, dword [ebp - 0x18d0]
or edx, dword [ebp - 0x18cc]
je 0x10077e02
mov eax, dword [0x100d32e0]
mov ecx, dword [0x100d32e4]
mov dword [ebp - 0xe20], eax
mov dword [ebp - 0xe1c], ecx
jmp 0x10077e16
mov edx, dword [0x100d3328]
xor eax, eax
mov dword [ebp - 0xe20], edx
mov dword [ebp - 0xe1c], eax
mov ecx, dword [ebp - 0xe20]
mov edx, dword [ebp - 0xe1c]
mov dword [0x100d3330], ecx
mov dword [0x100d3334], edx
mov eax, dword [0x100d3328]
xor ecx, ecx
xor eax, dword [ebp - 0x84]
xor ecx, dword [ebp - 0x80]
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x108], 0
movsx edx, byte [str.OReserved.PlatformS]
movsx eax, word [ebp - 0x1c]
not eax
cmp eax, edx
je 0x10078208
movsx ecx, byte [0x100d323e]
movsx edx, byte [0x100d3266]
cmp edx, ecx
jle 0x10078155
mov dword [0x100d32ec], 1
mov eax, dword [ebp - 0x88]
shl eax, 7
mov word [ebp - 0x20], ax
mov ecx, dword [0x100d3308]
or ecx, dword [0x100d330c]
jne 0x10077ead
mov dword [ebp - 0x42c], 1
jmp 0x10077eb7
mov dword [ebp - 0x42c], 0
movsx edx, byte [0x100d323e]
mov eax, edx
imul eax, dword [ebp - 0x42c]
cdq
mov dword [0x100d32e0], eax
mov dword [0x100d32e4], edx
xor eax, eax
mov dword [0x100d32c0], 8
mov dword [0x100d32c4], eax
movsx ecx, byte [0x100d31ef]
movzx edx, word [0x100d32cc]
sub edx, ecx
movzx eax, word [0x100d32cc]
add eax, edx
mov word [0x100d32cc], ax
push 0
push 0xcd8d
mov ecx, dword [0x100d32e4]
push ecx
mov edx, dword [0x100d32e0]
push edx
call fcn.100a25b0
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
movsx eax, word [ebp - 0x28]
imul ecx, eax, 0xd7a00162
xor edx, edx
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x8c], edx
mov eax, dword [0x100d32ec]
mov dword [ebp - 0x430], eax
cmp dword [ebp - 0x430], 0
je 0x10077f67
cmp dword [ebp - 0x430], 1
je 0x10078005
jmp 0x10078150
movsx ecx, byte [0x100d3217]
movzx edx, word [0x100d3310]
sub edx, ecx
movzx eax, word [0x100d3310]
sub eax, edx
mov word [0x100d3310], ax
movsx eax, byte [0x100d31c7]
cdq
sub eax, 0x8fb0416b
mov byte [0x100d31c6], al
movsx ecx, byte [ebp - 0x13]
movsx edx, word [ebp - 0x28]
sub edx, ecx
movsx eax, word [ebp - 0x28]
add eax, edx
mov word [ebp - 0x28], ax
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
push 0
push 0x34
push edx
push ecx
call fcn.100a25b0
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x18d8], eax
mov dword [ebp - 0x18d4], ecx
mov edx, dword [ebp - 0x18d8]
or edx, dword [ebp - 0x18d4]
je 0x10077fed
movsx eax, byte [ebp - 0x13]
mov dword [ebp - 0x434], eax
jmp 0x10077ff7
movzx ecx, word [ebp - 0x24]
mov dword [ebp - 0x434], ecx
mov edx, dword [ebp - 0x434]
mov dword [ebp - 0x7c], edx
jmp 0x10078150
mov eax, 0xffff934c
mov word [0x100d3338], ax
movzx ecx, word [ebp - 0x20]
movsx eax, word [ebp - 0x28]
add eax, ecx
cdq
mov ecx, dword [ebp - 0x68]
not ecx
mov esi, dword [ebp - 0x64]
not esi
add ecx, eax
adc esi, edx
mov dword [ebp - 0x18e0], ecx
mov dword [ebp - 0x18dc], esi
mov edx, dword [ebp - 0x18e0]
or edx, dword [ebp - 0x18dc]
jne 0x10078057
xor eax, eax
mov dword [ebp - 0xfb4], 1
mov dword [ebp - 0xfb0], eax
jmp 0x10078062
xorps xmm0, xmm0
movlpd qword [ebp - 0xfb4], xmm0
mov eax, dword [ebp - 0x88]
cdq
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
add ecx, eax
adc esi, edx
movzx edx, byte [0x100d31c6]
imul eax, edx, 0xd
cdq
sub eax, ecx
sbb edx, esi
mov ecx, dword [ebp - 0xfb0]
push ecx
mov ecx, dword [ebp - 0xfb4]
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
cmp dword [ebp - 0x48], 0
jne 0x100780b5
mov dword [ebp - 0x438], 1
jmp 0x100780bf
mov dword [ebp - 0x438], 0
mov edx, dword [0x100d32e8]
and edx, dword [ebp - 0x438]
mov word [ebp - 0x28], dx
movsx eax, byte [ebp - 0x14]
movsx ecx, byte [0x100d323e]
sub ecx, eax
mov eax, ecx
cdq
mov dword [0x100d3318], eax
mov dword [0x100d331c], edx
mov eax, dword [0x100d3300]
cdq
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
and ecx, eax
and esi, edx
mov dword [ebp - 0x18e8], ecx
mov dword [ebp - 0x18e4], esi
mov edx, dword [ebp - 0x18e8]
or edx, dword [ebp - 0x18e4]
jne 0x10078120
mov dword [ebp - 0x43c], 1
jmp 0x1007812a
mov dword [ebp - 0x43c], 0
movsx eax, byte [0x100d323e]
imul eax, dword [ebp - 0x43c]
mov word [0x100d3304], ax
mov ecx, dword [0x100d32e0]
add ecx, 0x17738f33
mov dword [0x100d32e8], ecx
jmp 0x10078203
cmp dword [ebp - 0x88], 0
jne 0x10078203
mov dword [ebp - 0x88], 0xcc
cmp dword [0x100d32e8], 0
jne 0x10078181
mov dword [ebp - 0x440], 1
jmp 0x1007818b
mov dword [ebp - 0x440], 0
mov edx, dword [ebp - 0x88]
xor edx, dword [ebp - 0x440]
movsx eax, byte [0x100d3217]
imul ecx, eax, 0x8f75be34
sub ecx, edx
xor edx, edx
mov dword [0x100d3320], ecx
mov dword [0x100d3324], edx
movsx eax, word [0x100d3338]
movsx ecx, byte [0x100d31ef]
imul ecx, eax
mov word [0x100d32d0], cx
movsx edx, word [ebp - 0x28]
imul edx, dword [ebp - 0x7c]
mov dword [ebp - 0x7c], edx
movzx eax, word [0x100d32d0]
cdq
mov ecx, eax
sub ecx, dword [ebp - 0x90]
movzx eax, word [0x100d32d0]
cdq
add eax, ecx
mov word [0x100d32d0], ax
movzx edx, byte [ebp - 0x15]
not edx
mov dword [0x100d32c8], edx
jmp 0x100782db
cmp dword [ebp - 0x48], 0
je 0x100782db
mov ax, word [0x10339c08]
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x7c]
cdq
mov ecx, dword [0x100d32f8]
mov edx, dword [0x100d32fc]
mov dword [ebp - 0x2920], edx
sub ecx, eax
movsx eax, byte [0x100d323e]
not eax
cdq
mov esi, eax
sub esi, ecx
movsx eax, byte [0x10339c0c]
imul ecx, eax, 0x48
not ecx
movzx eax, byte [ebp - 0x15]
add eax, ecx
cdq
add eax, esi
mov byte [ebp - 0x12], al
movsx edx, byte [0x100d3216]
mov eax, dword [0x100d32e8]
sub eax, edx
mov ecx, dword [0x100d32e8]
sub ecx, eax
mov dword [0x100d32e8], ecx
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
movsx eax, word [0x100d32f4]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, word [0x100d32f4]
cdq
sub eax, ecx
mov word [0x100d32f4], ax
movsx edx, word [ebp - 0x28]
test edx, edx
je 0x100782bb
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0xfbc], eax
mov dword [ebp - 0xfb8], ecx
jmp 0x100782d2
mov edx, dword [0x100d32e0]
mov eax, dword [0x100d32e4]
mov dword [ebp - 0xfbc], edx
mov dword [ebp - 0xfb8], eax
mov cl, byte [ebp - 0xfbc]
mov byte [ebp - 0x11], cl
mov dword [ebp - 0xbc], 0
push 0x100af80c
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
xor edx, edx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x18f0], eax
mov dword [ebp - 0x18ec], ecx
cmp dword [ebp - 0x18ec], 0
ja 0x1007831c
cmp dword [ebp - 0x18f0], 0
jb 0x1007833c
movsx edx, byte [0x100d31ef]
push edx
call dword [sym.imp.USER32.dll_GetTopWindow]
xor ecx, ecx
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], ecx
jmp 0x1007843e
movsx edx, word [ebp - 0x1c]
add edx, 0x34b70e57
xor eax, eax
mov dword [0x100d3330], edx
mov dword [0x100d3334], eax
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
movsx eax, byte [0x100d3217]
cdq
sub eax, ecx
sbb edx, esi
mov dword [ebp - 0x18f8], eax
mov dword [ebp - 0x18f4], edx
mov edx, dword [ebp - 0x18f8]
or edx, dword [ebp - 0x18f4]
jne 0x1007838b
mov dword [ebp - 0x444], 1
jmp 0x10078395
mov dword [ebp - 0x444], 0
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
movsx eax, word [ebp - 0x1c]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
movzx edx, byte [0x100d31c6]
mov ecx, dword [0x100d32e8]
sub ecx, edx
not ecx
xor ecx, eax
not ecx
movzx eax, word [0x100d3304]
xor eax, dword [ebp - 0x444]
cdq
xor eax, ecx
not eax
mov byte [0x100d3266], al
mov byte [0x100d31c7], 0xf
movsx eax, byte [0x100d3216]
cdq
mov ecx, dword [ebp - 0x70]
sub ecx, eax
mov eax, dword [ebp - 0x6c]
sbb eax, edx
mov edx, dword [ebp - 0x70]
sub edx, ecx
mov ecx, dword [ebp - 0x6c]
sbb ecx, eax
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], ecx
movzx eax, word [0x100d3310]
cdq
push edx
push eax
mov edx, dword [0x100d32dc]
push edx
mov eax, dword [0x100d32d8]
push eax
call fcn.100a25b0
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], edx
movzx ecx, word [ebp - 0x2c]
mov edx, dword [0x100d3300]
sub edx, ecx
mov eax, dword [0x100d3300]
imul eax, edx
mov dword [0x100d3300], eax
mov dword [ebp - 0x100], 0
movsx ecx, word [ebp - 0x1c]
cmp ecx, 0xd200
jl case.default.0x1007853c
mov byte [0x100d323f], 4
movsx edx, word [0x100d32f4]
mov eax, dword [ebp - 0x3c]
xor eax, edx
jne 0x10078479
mov dword [ebp - 0x448], 1
jmp 0x10078483
mov dword [ebp - 0x448], 0
movzx ecx, word [ebp - 0x20]
movzx edx, byte [ebp - 0x11]
not edx
imul edx, ecx
add edx, dword [ebp - 0x448]
jne 0x100784a1
mov byte [ebp - 0xa3], 1
jmp 0x100784a8
mov byte [ebp - 0xa3], 0
mov al, byte [ebp - 0xa3]
mov byte [ebp - 0x13], al
mov ecx, dword [0x100d32f8]
mov esi, dword [0x100d32fc]
sub ecx, 0xf357ca4e
sbb esi, 0
movzx eax, word [0x100d32cc]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov word [0x100d32cc], ax
movzx eax, byte [ebp - 0x15]
cdq
xor eax, 0x14eb9f5b
mov byte [ebp - 0x14], al
mov edx, dword [0x100d3330]
add edx, 0x441f
mov eax, 0xb7
sub eax, edx
mov byte [ebp - 0x13], al
mov ecx, dword [0x100d3330]
not ecx
mov edx, dword [0x100d3334]
not edx
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x8c], edx
movzx eax, byte [0x100d323f]
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x44c], 4
ja case.default.0x1007853c
mov ecx, dword [ebp - 0x44c]
jmp dword [ecx*4 + 0x1009cf64]
movzx eax, word [0x100d3304]
cdq
sub eax, 0xe9e5dd06
mov byte [0x100d323f], al
movzx edx, word [0x100d32cc]
test edx, edx
jne 0x1007856e
mov eax, 1
mov word [ebp - 0x126], ax
jmp 0x10078577
xor ecx, ecx
mov word [ebp - 0x126], cx
mov dx, word [ebp - 0x126]
mov word [0x100d3338], dx
movsx eax, word [0x100d32f0]
add eax, 0x4d67
mov word [0x100d3310], ax
movsx ecx, byte [0x10339c0c]
movzx edx, byte [0x100d323f]
and edx, ecx
mov byte [0x100d323f], dl
movsx eax, byte [0x100d31c7]
movsx ecx, byte [0x100d3217]
sub ecx, eax
movsx edx, byte [0x100d323e]
movsx eax, byte [0x100d3217]
sub eax, edx
not eax
imul eax, ecx
mov byte [ebp - 0x11], al
jmp case.default.0x1007853c
mov ecx, dword [ebp - 0x70]
or ecx, dword [ebp - 0x6c]
jne 0x100785ee
mov dword [ebp - 0x450], 1
jmp 0x100785f8
mov dword [ebp - 0x450], 0
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x1900], edx
mov dword [ebp - 0x18fc], eax
mov ecx, dword [ebp - 0x1900]
or ecx, dword [ebp - 0x18fc]
jne 0x1007862c
xor edx, edx
mov dword [ebp - 0x1908], 1
mov dword [ebp - 0x1904], edx
jmp 0x10078637
xorps xmm0, xmm0
movlpd qword [ebp - 0x1908], xmm0
mov ecx, dword [0x100d3318]
add ecx, dword [ebp - 0x1908]
mov eax, dword [ebp - 0x450]
sub eax, 0x6b328fa2
cdq
xor eax, ecx
mov byte [0x100d323f], al
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
sub edx, 0x6d20
sbb eax, 0
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], eax
mov eax, dword [0x100d32c8]
cdq
mov ecx, eax
sub ecx, dword [0x100d32d8]
mov eax, dword [0x100d32c8]
cdq
sub eax, ecx
mov dword [0x100d32c8], eax
mov edx, dword [ebp - 0x88]
add edx, 0x81
mov byte [0x100d323f], dl
mov eax, dword [0x100d3320]
or eax, dword [0x100d3324]
jne 0x100786b1
mov dword [ebp - 0x454], 1
jmp 0x100786bb
mov dword [ebp - 0x454], 0
movzx ecx, word [ebp - 0x20]
sub ecx, dword [ebp - 0x454]
movsx edx, byte [0x100d3216]
imul edx, ecx
test edx, edx
jne 0x100786df
mov dword [ebp - 0x458], 1
jmp 0x100786e9
mov dword [ebp - 0x458], 0
movsx eax, word [0x100d32bc]
add eax, dword [ebp - 0x458]
cdq
mov dword [0x100d32d8], eax
mov dword [0x100d32dc], edx
movsx eax, word [ebp - 0x1c]
cdq
sub eax, 0xf9ca062a
sbb edx, 0xc5548
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
and ecx, eax
and esi, edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], esi
jmp case.default.0x1007853c
mov dword [ebp - 0x48], 0x2fb83d52
mov edx, dword [ebp - 0x7c]
sub edx, 1
mov dword [ebp - 0x7c], edx
movsx eax, byte [str.OReserved.PlatformS]
movsx ecx, byte [0x100d31ef]
xor ecx, eax
mov byte [ebp - 0x12], cl
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x1910], edx
mov dword [ebp - 0x190c], eax
mov ecx, dword [ebp - 0x1910]
or ecx, dword [ebp - 0x190c]
je 0x1007877e
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xe28], edx
mov dword [ebp - 0xe24], eax
jmp 0x1007878f
movzx eax, byte [ebp - 0x11]
cdq
mov dword [ebp - 0xe28], eax
mov dword [ebp - 0xe24], edx
mov ecx, dword [ebp - 0xe28]
mov edx, dword [ebp - 0xe24]
mov dword [0x100d3330], ecx
mov dword [0x100d3334], edx
movzx eax, byte [0x100d323f]
movsx ecx, byte [0x10339c0c]
sub ecx, eax
movsx edx, byte [0x10339c0c]
and edx, ecx
mov byte [0x10339c0c], dl
movsx eax, byte [0x100d3216]
cdq
add eax, dword [ebp - 0x44]
adc edx, dword [ebp - 0x40]
add eax, dword [ebp - 0x44]
adc edx, dword [ebp - 0x40]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
jmp case.default.0x1007853c
movsx eax, byte [0x100d3217]
test eax, eax
jne 0x10078804
xor ecx, ecx
mov dword [ebp - 0xfc4], 1
mov dword [ebp - 0xfc0], ecx
jmp 0x1007880f
xorps xmm0, xmm0
movlpd qword [ebp - 0xfc4], xmm0
mov edx, dword [0x100d3318]
not edx
mov eax, dword [0x100d331c]
not eax
add edx, dword [ebp - 0xfc4]
adc eax, dword [ebp - 0xfc0]
mov dword [ebp - 0x1918], edx
mov dword [ebp - 0x1914], eax
mov ecx, dword [ebp - 0x1918]
or ecx, dword [ebp - 0x1914]
jne 0x10078850
mov dword [ebp - 0x45c], 1
jmp 0x1007885a
mov dword [ebp - 0x45c], 0
movzx edx, word [ebp - 0x2c]
or edx, dword [ebp - 0x45c]
mov byte [ebp - 0x11], dl
mov eax, dword [ebp - 0x3c]
add eax, 0x5bf4
movzx ecx, byte [0x100d31c6]
xor ecx, eax
mov byte [0x100d31c6], cl
mov edx, dword [0x100d32ec]
xor edx, 0xc7ee
xor eax, eax
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x8c], eax
mov ecx, dword [0x100d32c0]
or ecx, dword [0x100d32c4]
je 0x100788b2
movsx edx, byte [ebp - 0x13]
mov dword [ebp - 0x460], edx
jmp 0x100788bf
movsx eax, word [0x100d32f0]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x460]
cdq
mov dword [0x100d32f8], eax
mov dword [0x100d32fc], edx
movsx ecx, byte [ebp - 0x13]
sub ecx, 0x7d1f49d3
xor edx, edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], edx
jmp case.default.0x1007853c
movsx eax, byte [0x100d3217]
imul ecx, eax, 0xe6ba
add ecx, dword [0x100d32c8]
mov dword [0x100d32c8], ecx
mov eax, dword [0x100d32c0]
mov edx, dword [0x100d32c4]
mov cl, 3
call fcn.100a2610
mov dword [ebp - 0x7c], eax
mov dl, byte [ebp - 0x13]
mov byte [ebp - 0x15], dl
movsx eax, word [0x100d32f0]
test eax, eax
jne 0x10078933
mov dword [ebp - 0x464], 1
jmp 0x1007893d
mov dword [ebp - 0x464], 0
movsx ecx, byte [0x100d323e]
imul ecx, dword [ebp - 0x464]
test ecx, ecx
jne 0x1007895b
mov dword [ebp - 0x468], 1
jmp 0x10078965
mov dword [ebp - 0x468], 0
movzx edx, byte [ebp - 0x12]
mov eax, dword [ebp - 0x468]
sub eax, edx
jne 0x10078981
mov ecx, 1
mov word [ebp - 0x12a], cx
jmp 0x1007898a
xor edx, edx
mov word [ebp - 0x12a], dx
mov ax, word [ebp - 0x12a]
mov word [0x100d32cc], ax
movzx eax, byte [ebp - 0x11]
cdq
xor eax, 0xe30fec62
mov byte [ebp - 0x13], al
mov dword [ebp - 0xcc], 0
mov ecx, dword [ebp - 0x68]
add ecx, 1
mov edx, dword [ebp - 0x64]
adc edx, 0
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], edx
movzx ax, byte [ebp - 0x12]
mov ecx, 2
imul edx, ecx, 0x26
mov word [edx + 0x10339c10], ax
movzx eax, byte [0x100d323f]
movzx ecx, word [ebp - 0x2c]
sub ecx, eax
movzx edx, word [ebp - 0x2c]
add edx, ecx
mov word [ebp - 0x2c], dx
movsx eax, byte [0x100d323e]
imul eax, eax, 0x11041d05
cdq
mov dword [0x100d32e0], eax
mov dword [0x100d32e4], edx
mov ecx, dword [0x100d32c8]
add ecx, 0x6462e5f8
mov word [0x100d32cc], cx
mov dword [ebp - 0x104], 0
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x1920], edx
mov dword [ebp - 0x191c], eax
mov ecx, dword [ebp - 0x191c]
cmp ecx, dword [ebp - 0x80]
jl 0x10078a5a
jg 0x10078a4e
mov edx, dword [ebp - 0x1920]
cmp edx, dword [ebp - 0x84]
jb 0x10078a5a
mov dword [ebp - 0x46c], 1
jmp 0x10078a64
mov dword [ebp - 0x46c], 0
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x1928], eax
mov dword [ebp - 0x1924], ecx
cmp dword [ebp - 0x1924], 0
jl 0x10078a96
jg 0x10078a8a
cmp dword [ebp - 0x1928], 0xd
jb 0x10078a96
mov dword [ebp - 0x470], 1
jmp 0x10078aa0
mov dword [ebp - 0x470], 0
mov edx, dword [ebp - 0x46c]
cmp edx, dword [ebp - 0x470]
jne 0x10078cb3
movsx eax, word [0x100d32bc]
test eax, eax
jne 0x10078b9f
mov ecx, dword [0x100d3318]
mov edx, 4
shl edx, 1
mov dword [edx + 0x1060b528], ecx
movzx eax, word [ebp - 0x30]
test eax, eax
jne 0x10078af0
xor ecx, ecx
mov dword [ebp - 0xfcc], 1
mov dword [ebp - 0xfc8], ecx
jmp 0x10078afb
xorps xmm0, xmm0
movlpd qword [ebp - 0xfcc], xmm0
movsx edx, byte [0x100d323e]
movzx eax, byte [0x100d31c6]
and eax, edx
jne 0x10078b21
xor ecx, ecx
mov dword [ebp - 0x1930], 1
mov dword [ebp - 0x192c], ecx
jmp 0x10078b2c
xorps xmm0, xmm0
movlpd qword [ebp - 0x1930], xmm0
mov edx, dword [0x100d32f8]
mov eax, dword [0x100d32fc]
push eax
push edx
mov ecx, dword [ebp - 0xfc8]
push ecx
mov edx, dword [ebp - 0xfcc]
push edx
call fcn.100a25b0
sub eax, dword [ebp - 0x1930]
mov word [ebp - 0x1c], ax
mov eax, dword [0x100d32c0]
sub eax, 0xc47f85f2
mov word [ebp - 0x1c], ax
mov ecx, dword [ebp - 0x84]
not ecx
mov edx, dword [ebp - 0x80]
not edx
xor ecx, 0x76
xor edx, 0
mov dword [0x100d3308], ecx
mov dword [0x100d330c], edx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
add eax, 0x78
adc ecx, 0
mov dword [0x100d3330], eax
mov dword [0x100d3334], ecx
jmp 0x10078cae
mov edx, dword [0x100d3318]
or edx, dword [0x100d331c]
jne 0x10078bb9
mov dword [ebp - 0x474], 1
jmp 0x10078bc3
mov dword [ebp - 0x474], 0
movzx eax, word [ebp - 0x20]
cmp eax, dword [ebp - 0x474]
je 0x10078cae
movzx eax, byte [ebp - 0x11]
imul eax, dword [0x100d3300]
cdq
mov esi, eax
mov edi, edx
movzx eax, byte [ebp - 0x11]
cdq
mov ebx, dword [0x100d32f8]
mov ecx, dword [0x100d32fc]
sub ebx, eax
sbb ecx, edx
movsx eax, byte [0x100d3216]
cdq
mov dword [ebp - 0x164c], esi
mov esi, dword [ebp - 0x50]
mov dword [ebp - 0x1648], edi
mov edi, dword [ebp - 0x4c]
push edx
push eax
push edi
push esi
mov dword [ebp - 0x1644], ecx
call fcn.100a25b0
add eax, ebx
mov esi, dword [ebp - 0x1644]
adc edx, esi
mov esi, dword [ebp - 0x1648]
push esi
mov esi, dword [ebp - 0x164c]
push esi
push edx
push eax
call fcn.100a25b0
mov word [0x100d3310], ax
mov dword [ebp - 0x48], 0x8d
mov ecx, 2
imul edx, ecx, 0x72
mov ax, word [edx + 0x10502098]
mov word [0x100d32f0], ax
movsx ecx, word [ebp - 0x28]
mov dword [ebp - 0x7c], ecx
mov ecx, dword [0x100d3328]
xor esi, esi
and ecx, 0x2e0472cc
and esi, 0xd96a4
movzx eax, word [ebp - 0x20]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov word [ebp - 0x20], ax
movsx eax, word [ebp - 0x28]
xor eax, 0x87
cdq
push edx
push eax
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x44]
push eax
call fcn.100a25b0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
jmp 0x10078d34
mov ecx, dword [0x100d3330]
cmp ecx, dword [0x100d32e0]
jne 0x10078d34
mov edx, dword [0x100d3334]
cmp edx, dword [0x100d32e4]
jne 0x10078d34
movsx eax, byte [0x100d31c7]
sub eax, 0x67
mov byte [0x100d323e], al
movsx ecx, byte [0x100d323e]
imul edx, ecx, 0x2d
mov word [ebp - 0x28], dx
movsx eax, word [0x100d32f4]
add eax, 0xb7
cdq
mov esi, eax
movsx eax, byte [0x100d31ef]
cdq
mov ecx, dword [0x100d330c]
push ecx
mov ecx, dword [0x100d3308]
push ecx
push edx
push eax
call fcn.100a25b0
sub eax, esi
mov word [ebp - 0x28], ax
mov dword [0x100d3328], 0x4c3e8b45
mov edx, 0x80
mov word [0x100d3304], dx
mov dword [ebp - 0xc8], 0
mov eax, dword [0x10339c08]
xor ecx, ecx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], ecx
xor edx, edx
mov dword [ebp - 0x90], 2
mov dword [ebp - 0x8c], edx
movzx eax, byte [ebp - 0x12]
sub eax, 0x353c7b1
movsx ecx, word [ebp - 0x28]
imul ecx, eax
mov word [ebp - 0x28], cx
mov dx, word [0x10339c08]
mov word [0x100d32f0], dx
movzx eax, word [0x100d32d0]
cdq
mov esi, eax
sub esi, dword [ebp - 0x84]
movsx eax, byte [0x100d323e]
cdq
mov ecx, dword [0x100d330c]
push ecx
mov ecx, dword [0x100d3308]
push ecx
push edx
push eax
call fcn.100a25b0
add eax, esi
mov byte [ebp - 0x12], al
mov dword [ebp - 0xfc], 0
movsx eax, word [0x100d32bc]
cdq
add eax, dword [ebp - 0x84]
mov word [0x100d32f4], ax
mov edx, dword [ebp - 0x68]
or edx, dword [ebp - 0x64]
je 0x10078dea
movsx eax, word [ebp - 0x28]
cdq
mov dword [ebp - 0xfd4], eax
mov dword [ebp - 0xfd0], edx
jmp 0x10078dfc
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0xfd4], eax
mov dword [ebp - 0xfd0], ecx
mov dx, word [ebp - 0xfd4]
mov word [0x100d32bc], dx
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
mov dword [ebp - 0x2924], ecx
mov word [ebp - 0x20], ax
movzx edx, byte [0x100d323f]
movsx eax, byte [str.OReserved.PlatformS]
imul eax, edx
movsx ecx, byte [str.OReserved.PlatformS]
sub ecx, eax
mov byte [str.OReserved.PlatformS], cl
mov dx, word [0x100d3310]
sub dx, 1
mov word [0x100d3310], dx
mov dword [ebp - 0xf4], 0
push 0
push 0xc4
movsx eax, word [0x100d3338]
cdq
push edx
push eax
movzx eax, byte [ebp - 0x11]
cdq
push edx
push eax
push 0
push 0
push 0
push 0
call fcn.100a1a10
add esp, 0x28
mov dword [0x100d32e8], eax
cmp dword [0x100d32e8], 0
je 0x10078eb9
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x478], eax
cmp dword [ebp - 0x478], 0
je 0x10078eb4
mov eax, dword [ebp - 0x478]
push eax
call dword [sym.imp.USER32.dll_GetWindowDC]
mov dword [ebp - 0x2928], eax
jmp 0x10078fc9
movzx eax, word [ebp - 0x2c]
cdq
mov dword [ebp - 0x1938], eax
mov dword [ebp - 0x1934], edx
cmp dword [ebp - 0x1938], 0x8f5f294
jne 0x10078ee2
cmp dword [ebp - 0x1934], 0xfffd2260
je 0x10078ef6
xor ecx, ecx
mov dword [ebp - 0xfdc], 1
mov dword [ebp - 0xfd8], ecx
jmp 0x10078f01
xorps xmm0, xmm0
movlpd qword [ebp - 0xfdc], xmm0
cmp dword [ebp - 0xfd8], 0x9353d
jg 0x10078fc9
jl 0x10078f23
cmp dword [ebp - 0xfdc], 0x9146d841
ja 0x10078fc9
movsx edx, byte [0x100d3266]
shl edx, 5
mov word [0x100d32cc], dx
mov eax, dword [0x100d32c8]
sub eax, 1
mov dword [0x100d32c8], eax
mov ecx, dword [0x100d32e0]
or ecx, dword [0x100d32e4]
jne 0x10078f63
mov dword [ebp - 0x15c], 0
movzx eax, word [0x100d32cc]
movsx ecx, byte [0x100d323e]
sub ecx, eax
mov word [ebp - 0x2c], cx
movzx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
add ecx, eax
adc esi, edx
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
sub edx, ecx
sbb eax, esi
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], eax
push 0
push 0x1f9bf207
mov ecx, dword [0x100d32e4]
push ecx
mov edx, dword [0x100d32e0]
push edx
call fcn.100a25b0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
push 0
push 0x98744374
mov eax, dword [0x100d32c4]
push eax
mov ecx, dword [0x100d32c0]
push ecx
call fcn.100a25b0
mov byte [ebp - 0x12], al
mov dword [ebp - 0xa0], 0
push 0
push 0
push 0xd9
movzx edx, byte [ebp - 0x7c]
push edx
mov eax, dword [ebp - 0x48]
push eax
movzx ecx, byte [ebp - 0x24]
push ecx
call fcn.1009e190
add esp, 0x18
mov byte [0x100d3217], al
mov edx, dword [0x100d32e0]
or edx, dword [0x100d32e4]
jne 0x10079093
mov eax, 1
test eax, eax
jne 0x10079093
mov dword [ebp - 0x47c], 1
cmp dword [ebp - 0x47c], 0xffffffff
jl 0x10079178
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret