Function at 0x408469
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
push ebx
push esi
push edi
mov edi, dword [sym.imp.SHLWAPI.dll_ChrCmpIW]
mov dword [ebp - 8], edi
mov dword [ebp - 0x14], 0x7fe3
mov eax, dword [0x410330]
mov edx, dword [ebp - 0x14]
mov cl, byte [0x41032c]
add eax, 0x2b6c
and edx, eax
shl edx, cl
mov eax, edi
push 0x72
push 0x45
lea eax, [eax + edx - 0x3a310000]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
call eax
mov dword [ebp - 4], 0x5b9d
mov dword [ebp - 8], 0x1a20
mov dword [ebp - 0x10], 0x5d46
mov dword [ebp - 0x14], 4
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
xor edx, edx
div ecx
mov ecx, dword [ebp - 8]
xor edx, edx
imul eax, ecx
mov ecx, dword [ebp - 4]
xor eax, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [0x410344]
mov ecx, dword [0x410340]
imul eax, ecx
xor eax, 0x5a76
shl eax, 4
mov ecx, 0x13673f20
div ecx
mov dword [ebp - 0x14], eax
mov eax, dword [0x410374]
mov ecx, dword [0x410370]
mov edx, dword [0x41036c]
mov esi, dword [0x41033c]
or eax, ecx
imul esi, esi, 0x4bb9
mov cl, byte [0x410338]
and edx, eax
mov eax, dword [0x410368]
or eax, edx
xor eax, 0x908ebbd
push eax
shr esi, cl
mov ecx, dword [0x410364]
mov eax, dword [0x410360]
xor edx, edx
div ecx
xor edx, edx
mov ecx, 0x5d5e
imul eax, eax, 0x2b58
xor eax, 0xc5bd7db1
push eax
mov eax, dword [0x41035c]
sub eax, 0x56b5
div ecx
mov ecx, 0x24ca
mov eax, edx
xor edx, edx
div ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [eax*4 + 0x410350]
mov ecx, dword [0x410348]
add edx, 0x68984663
push edx
mov edx, dword [0x41034c]
and ecx, edx
sub ecx, eax
xor ecx, 0x1cf1e572
push ecx
mov cl, byte [0x410334]
shr esi, cl
add esi, 0x34550fe
push esi
call fcn.0040bbff
mov word [ebp - 8], ax
mov ebx, 0x8d6ccaeb
mov dword [ebp - 0x2c], 0xfff7abc1
mov dword [ebp - 0x28], 0xfff7abfe
mov eax, dword [0x410380]
mov cl, byte [0x41037c]
sub eax, 0x6c98
shr eax, 3
xor eax, 0xa695338f
push eax
mov eax, dword [0x410378]
shl eax, cl
shl eax, 0xb
xor eax, 0x108b7aac
push eax
call fcn.0040c2fe
mov word [ebp - 8], ax
mov eax, dword [0x410390]
mov ecx, dword [0x41038c]
or eax, 0x5ec1
xor edx, edx
div ecx
sub edx, 0x18b
mov dword [ebp - 8], edx
mov ecx, dword [0x4103a0]
mov eax, dword [0x41039c]
or ecx, 0x2a6
imul eax, ecx
mov ecx, dword [0x410398]
and ecx, eax
xor ecx, 0x104
mov dword [ebp - 0x14], ecx
mov cl, byte [0x4103d0]
mov eax, dword [0x4103cc]
shl eax, cl
xor edx, edx
mov ecx, 0x25c935
div ecx
mov ecx, dword [0x4103c8]
xor edx, edx
or ecx, eax
mov eax, 0x4d2f
sub eax, ecx
mov dword [ebp - 0x10], eax
mov eax, dword [0x4103ec]
mov ebx, dword [0x4103e8]
add eax, eax
xor ebx, eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax*4 + 0x4103a4]
mov ecx, dword [0x410394]
mov esi, dword [0x410388]
xor eax, ecx
imul esi, esi, 0x3ab3
mov cl, byte [0x4103f8]
mov dword [ebp - 0x14], eax
mov eax, 0x2088
shl eax, cl
mov ecx, dword [0x4103f4]
imul eax, eax, 0x75c6
sub eax, 0x585e681f
push eax
mov eax, dword [0x4103f0]
div ecx
mov ecx, dword [0x4103e4]
xor edx, edx
or eax, 0x7a7f
sub eax, 0x62e43673
push eax
mov eax, ebx
div ecx
sub eax, 0x39f84407
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax*4 + 0x4103d4]
add eax, dword [0x4103c4]
or eax, 0x5b2c
sub eax, 0x5efcdad8
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax*4 + 0x4103b8]
add eax, dword [ebp - 0x14]
xor eax, 0x5eeaaebc
push eax
mov eax, dword [0x410384]
xor eax, esi
add eax, 0x7f88b660
push eax
call fcn.0040c0f3
mov word [ebp - 8], ax
mov eax, dword [0x40e5b0]
mov dword [ebp - 0x1c], eax
mov ecx, dword [0x410414]
mov eax, dword [0x410410]
xor edx, edx
div ecx
mov eax, dword [0x410404]
push 3
pop esi
mov ecx, edx
xor edx, edx
div esi
mov edx, dword [0x41041c]
imul edx, edx, 0x3ff0
mov esi, 0xe553253a
sub esi, edx
mov edx, dword [0x410418]
push esi
xor edx, 0x1002
and edx, 0x5e1a
mov esi, 0x8082f974
sub esi, edx
mov edx, dword [0x41040c]
xor edx, ecx
mov ecx, dword [0x410408]
push esi
and ecx, 0x110
add edx, 0xc02c71f
push edx
or ecx, 0x4603
shl eax, 2
add ecx, 0x69ec1696
push ecx
mov ecx, dword [0x410400]
xor edx, edx
div ecx
mov eax, dword [0x4103fc]
sub eax, 0x122a
xor eax, 0xafae3bde
add edx, 0x423149f8
push edx
push eax
call fcn.0040bf29
mov byte [ebp - 5], al
mov eax, dword [0x40e5b4]
mov dword [ebp - 0x20], eax
mov eax, dword [sym.imp.USER32.dll_VkKeyScanA]
mov dword [ebp - 0x24], eax
mov eax, dword [0x410ab0]
mov eax, dword [eax + 0x19c]
xor esi, esi
mov dword [eax], esi
aaa
mov dword [ebp - 0x24], esi
xor eax, 0x5970cdfe
mov ebx, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 8], ebx
mov dword [ebp - 0x14], 0x4f73
mov eax, dword [ebp - 0x14]
mov ecx, dword [0x410420]
add eax, eax
xor eax, 0x405d
sub eax, ecx
xor eax, 0xca3e
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax*4 + 0x410428]
mov ecx, dword [0x410424]
add ecx, 0xf4c
and ecx, 0x4fb2
or eax, ecx
mov ecx, 0x49e0
sub ecx, eax
mov eax, dword [0x410444]
add dword [ebp - 8], ecx
xor edx, edx
mov ecx, 0x7635
div ecx
xor edx, 0x438
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x14]
mov cl, byte [eax*4 + 0x410448]
mov eax, dword [0x410440]
shl eax, cl
mov ecx, dword [0x41043c]
xor ecx, eax
add ecx, 0x1fff8077
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 8]
push ecx
call eax
push esi
push esi
push esi
push esi
call fcn.00402aaf
test byte [0x410b90], 1
jne 0x40889e
mov eax, dword [sym.imp.SHLWAPI.dll_PathIsRelativeA]
or dword [0x410b90], 1
mov dword [0x410708], eax
test byte [0x410b90], 2
jne 0x4088b8
mov eax, dword [sym.imp.USER32.dll_GetSysColor]
or dword [0x410b90], 2
mov dword [0x410704], eax
mov eax, dword [0x41045c]
mov ecx, dword [0x410458]
or eax, ecx
mov ecx, dword [0x410454]
or eax, 0xa77
imul ecx, eax
mov eax, dword [0x410704]
lea eax, [eax + ecx - 0x20f7be10]
mov ecx, dword [0x410460]
mov dword [0x410704], eax
xor edx, edx
mov eax, 0x7e49
div ecx
push 3
pop ecx
mov eax, edx
and eax, 0x5c94
xor edx, edx
div ecx
sub eax, 0x48a94d3e
mov dword [ebp - 0x14], eax
push eax
mov eax, dword [0x410704]
call eax
mov dword [ebp - 0x24], 0x40d00c
mov cl, byte [0x410468]
mov eax, 0x4ec6
shr eax, cl
mov ecx, dword [0x410464]
xor edx, edx
push 0x1d
div ecx
xor edx, edx
mov ecx, eax
shl ecx, 0x1b
mov eax, 0x48000000
div ecx
xor edx, edx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], 0x13
mov eax, dword [0x410474]
mov cl, byte [ebp - 0x14]
add eax, 0xffffa570
shl eax, cl
mov ecx, dword [0x410470]
div ecx
sub eax, 0x732
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
mov al, byte [eax + 0x410480]
movzx ecx, al
mov eax, dword [ebp - 0x14]
mov al, byte [eax + 0x410478]
movzx eax, al
or eax, ecx
movzx ecx, byte [0x41046c]
or ecx, eax
mov byte [ebp - 5], cl
mov dword [ebp - 0x10], 0x5750
mov dword [ebp - 0x14], 0x39a9
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
or eax, ecx
imul eax, eax, 0x703a
add eax, dword [0x410488]
mov dword [ebp - 0x14], eax
mov eax, dword [0x410494]
imul eax, eax, 0x765
and eax, 0x1350
sub eax, 0x124f
mov dword [ebp - 0x14], eax
mov cl, byte [0x41049c]
pop eax
shl eax, cl
mov ecx, dword [0x410498]
or ecx, eax
xor ecx, 0xffffebff
and ecx, 0x3ecd
mov dword [ebp - 0x10], ecx
mov ax, word [0x4104bc]
movzx ecx, ax
mov ax, word [0x4104b8]
movzx eax, ax
cdq
idiv ecx
movzx eax, word [0x4104b4]
add ax, dx
mov edx, 0x2f0e
mov esi, edx
add eax, 0x332
mov word [ebp - 4], ax
mov eax, dword [ebp - 0x10]
mov cl, byte [eax*2 + 0x4104a0]
mov eax, dword [ebp - 0x14]
mov ax, word [eax*2 + 0x4104a8]
sar esi, cl
and ax, si
mov esi, 0x6a27
jmp 0x408a9f
mov al, byte [0x4104c0]
mov cl, byte [0x4104bf]
imul cl
movzx ecx, byte [0x4104be]
movzx eax, al
xor ecx, eax
mov byte [ebp - 5], cl
mov ax, word [0x410490]
mov cx, word [0x41048c]
shr ax, 9
and cx, ax
push 0xa
pop eax
sub ax, cx
movzx ecx, word [ebp - 4]
movzx eax, ax
add ecx, eax
mov word [ebp - 4], cx
mov eax, dword [ebp - 0x10]
mov cl, byte [eax*2 + 0x4104a0]
mov eax, dword [ebp - 0x14]
mov ax, word [eax*2 + 0x4104a8]
mov dword [ebp - 8], edx
sar dword [ebp - 8], cl
and ax, word [ebp - 8]
mov cx, word [ebp - 4]
xor ax, si
cmp cx, ax
jb 0x408a3d
mov eax, dword [sym.imp.SHLWAPI.dll_IsCharSpaceA]
mov dword [ebp - 8], eax
mov eax, dword [0x4104c8]
mov cl, byte [0x4104c4]
add eax, 0x7f5c
shr eax, cl
mov ecx, 0xf0800000
push 0x6c
shl eax, 0x17
sub ecx, eax
add dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
call eax
mov eax, dword [sym.imp.USER32.dll_DestroyCursor]
mov dword [ebp - 8], eax
mov eax, dword [0x4104d0]
xor edx, edx
mov ecx, 0x6c3b
div ecx
mov eax, dword [0x4104cc]
imul eax, edx
xor eax, 0x149
and eax, 0x6b69
add dword [ebp - 8], eax
mov eax, dword [0x4104d4]
imul eax, eax, 0xfffff4e5
and eax, 0x1d80
xor eax, 0x39251ca6
mov dword [ebp - 0xc], eax
push dword [ebp - 0xc]
lea eax, [ebp - 0xc]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 8]
call eax
test byte [0x410b90], 4
jne 0x408b44
mov eax, dword [sym.imp.USER32.dll_GetProcessDefaultLayout]
or dword [0x410b90], 4
mov dword [0x410700], eax
mov eax, dword [0x4104d8]
xor edx, edx
mov ecx, 0x7b96
div ecx
sub edx, 0x5a81
mov dword [ebp - 0x14], edx
mov byte [ebp - 1], 0x85
mov al, byte [ebp - 1]
mov cl, byte [0x4104dc]
or al, 0x85
shl al, cl
mov ecx, dword [ebp - 0x14]
mov cl, byte [ecx + 0x4104e0]
movzx ecx, cl
movzx eax, al
cdq
idiv ecx
mov byte [ebp - 5], dl
bt eax, 5
mov eax, dword [ebp - 0x1c]
mov dword [0x40e4e4], eax
mov edx, 0xb57c3648
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov dword [ecx], eax
mov dword [ebp - 8], edi
mov cl, byte [0x4104e4]
mov eax, 0x7ffe
shl eax, cl
mov ecx, edi
push 0x66
push 0x77
shr eax, 0x18
lea eax, [ecx + eax - 0x80]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
call eax
mov eax, dword [ebp + 8]
mov dword [str.c_t], eax
mov eax, dword [sym.imp.KERNEL32.dll_WinExec]
mov dword [ebp + 8], eax
mov eax, dword [sym.imp.USER32.dll_EnumClipboardFormats]
mov dword [ebp + 8], eax
mov eax, dword [0x410ab0]
mov eax, dword [eax + 0x1cc]
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [eax]
je 0x40922a
mov eax, dword [0x40d00c]
sub eax, 0xab721
mov esi, 0x2e321
xor eax, esi
cmp eax, 0xfff7abc1
je 0x40922a
mov eax, dword [sym.imp.KERNEL32.dll_GetOEMCP]
mov dword [ebp + 8], eax
mov eax, dword [0x4104e8]
mov ecx, dword [0x4104f0]
xor eax, ecx
mov ecx, dword [0x4104ec]
xor ecx, eax
mov eax, dword [ebp + 8]
lea eax, [eax + ecx - 0x5dcd]
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
call eax
mov eax, dword [0x410ab0]
cmp dword [eax + 0x1d4], 0xfff7abfe
jne 0x408e31
test byte [0x410b90], 8
jne 0x408c63
or dword [0x410b90], 8
mov dword [0x4106fc], ebx
mov ecx, dword [0x4104f8]
mov eax, 0x3269
sub eax, ecx
mov ecx, dword [0x4104fc]
add eax, ecx
mov cl, byte [0x4104f4]
shr eax, cl
mov ecx, 0xe17
xor edx, edx
sub ecx, eax
mov dword [ebp + 8], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax*4 + 0x410504]
mov eax, 0x746f
sub eax, ecx
mov ecx, dword [0x410500]
add ecx, eax
mov eax, dword [0x41051c]
xor ecx, 0x9b20
shr ecx, 4
add dword [0x4106fc], ecx
mov ecx, 0x5f27
div ecx
xor edx, 0x500
shr edx, 7
mov dword [ebp + 8], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax*4 + 0x410520]
mov eax, dword [0x410518]
xor edx, edx
div ecx
mov cl, byte [0x410514]
shr eax, cl
sub eax, 0x52
mov dword [ebp - 0x18], eax
push dword [ebp - 0x18]
lea eax, [ebp - 0x18]
mov dword [ebp - 0x34], eax
mov eax, dword [0x4106fc]
call eax
mov eax, dword [ebp - 0x2c]
mov ecx, dword [0x410ab0]
mov ecx, dword [ecx + 0x1d0]
mov dword [ecx], eax
mov dword [ebp + 8], 0x3a2f
mov eax, dword [ebp + 8]
mov ecx, dword [0x410538]
xor edx, edx
or eax, 0x3326
div ecx
mov eax, 0x2292
xor edx, 0x3b2e
mov dword [ebp + 8], edx
mov dword [ebp - 0x24], 0x643f
mov dword [ebp - 0x28], 0x2df0
mov dword [ebp - 0x2c], 0x4066
mov ecx, dword [0x410558]
xor edx, edx
div ecx
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx*4 + 0x41053c]
mov esi, dword [0x410530]
imul ecx, ecx, 0x18c6
mov edx, dword [0x410554]
imul esi, esi, 0x5a3f
add edx, eax
mov eax, dword [0x410550]
imul eax, eax, 0x187b
xor edx, 0x501298a5
push edx
mov edx, 0xffffe852
sub edx, eax
mov eax, dword [ebp - 0x2c]
and edx, 0x7b90
add edx, 0x604b0347
or eax, 0x7fdd
add esi, 0xda5b461c
xor eax, 0x89839237
push edx
push eax
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
add eax, 0x631a
xor edx, edx
div edi
mov eax, 0x21f3
mov edi, 0x9f367
xor edx, 0x79097db1
push edx
mov edx, dword [0x41054c]
sub eax, edx
xor edx, edx
div edi
mov edi, dword [0x410534]
xor edx, edx
shl eax, 0xf
add eax, 0x29a6998b
push eax
mov eax, ecx
div edi
mov eax, dword [0x41052c]
add eax, esi
sub edx, 0x16cf5945
push edx
push eax
call fcn.0040c181
mov byte [ebp + 0xb], al
mov cl, byte [0x410560]
mov eax, 0x7047
shl ax, cl
mov cx, word [0x41055c]
movzx ecx, cx
movzx eax, ax
cdq
idiv ecx
mov word [ebp + 8], ax
jmp 0x409220
mov eax, dword [eax + 0x198]
mov ecx, dword [eax]
mov eax, dword [ecx + 0x3c]
mov ebx, dword [eax + ecx + 0x28]
mov eax, dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
mov dword [ebp + 8], eax
mov eax, dword [0x410564]
push 0xb
add ebx, ecx
xor edx, edx
pop ecx
div ecx
imul eax, eax, 0x390f
or eax, 0x1a0d
xor eax, 0x1a1bfcf
add dword [ebp + 8], eax
mov eax, dword [ebp + 8]
call eax
test byte [0x410b90], 0x10
jne 0x408e88
mov eax, dword [sym.imp.KERNEL32.dll_GetCompressedFileSizeA]
or dword [0x410b90], 0x10
mov dword [0x4106f8], eax
mov dword [ebp - 0x2c], 0xfff7aa3e
mov ecx, dword [0x410588]
mov eax, dword [0x410584]
xor edx, edx
div ecx
mov eax, dword [0x410580]
mov cl, byte [0x41057c]
imul eax, edx
shl eax, cl
xor eax, 0x993220d8
mov dword [ebp + 8], eax
mov ecx, dword [0x410578]
mov eax, dword [0x410574]
shl ecx, 0xe
imul eax, ecx
mov ecx, dword [0x410570]
sub eax, ecx
mov ecx, dword [ebp + 8]
add eax, 0xe3130b5e
cmp ecx, eax
ja 0x408f71
test byte [0x410b90], 0x20
jne 0x408ef5
or dword [0x410b90], 0x20
mov dword [0x4106f4], edi
mov eax, dword [0x410590]
mov ecx, dword [0x41058c]
shr eax, 5
xor edx, edx
div ecx
mov eax, dword [0x4106f4]
push 0x61
push 0x62
or edx, 0x2f30
lea eax, [eax + edx - 0x2f7e]
mov dword [0x4106f4], eax
mov eax, dword [0x4106f4]
call eax
mov ecx, dword [0x41056c]
mov eax, dword [0x410568]
add ecx, 0x6992
and eax, ecx
xor edx, edx
mov ecx, 0x1100
div ecx
add dword [ebp + 8], eax
mov ecx, dword [0x410578]
mov eax, dword [0x410574]
shl ecx, 0xe
imul eax, ecx
mov ecx, dword [0x410570]
sub eax, ecx
mov ecx, dword [ebp + 8]
add eax, 0xe3130b5e
cmp ecx, eax
jbe 0x408eb6
mov dword [ebp - 0x10], 0xfff7abc5
mov byte [ebp + 0xb], 0x60
mov eax, dword [0x41059c]
mov ecx, dword [0x410598]
and eax, 0x237e
xor eax, 0x6a9e
xor edx, edx
div ecx
sub eax, 0x192d
mov dword [ebp - 0x14], eax
movzx eax, byte [ebp + 0xb]
mov cl, byte [0x410596]
and al, 0xdf
sub al, cl
add eax, 0xd0
mov byte [ebp + 0xb], al
jmp 0x408ffe
mov al, byte [0x4105a8]
movzx ecx, al
movzx eax, byte [0x4105a9]
and eax, 0xaa
and eax, ecx
cdq
mov ecx, 0x9b
idiv ecx
mov byte [ebp - 5], dl
mov al, byte [0x410595]
mov cl, byte [0x410594]
shl al, 2
sub al, 0x3e
movzx eax, al
movzx ecx, cl
cdq
idiv ecx
movzx ecx, byte [ebp + 0xb]
movzx eax, al
xor eax, 0x42
sub ecx, eax
mov byte [ebp + 0xb], cl
mov eax, dword [ebp - 0x14]
mov al, byte [eax + 0x4105a4]
mov cl, byte [0x4105a0]
and cl, 4
shl cl, 3
xor al, cl
mov cl, byte [ebp + 0xb]
cmp cl, al
ja 0x408fb5
test byte [0x410b90], 0x40
mov byte [ebp + 0xb], 0xa5
jne 0x40903a
mov eax, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
or dword [0x410b90], 0x40
mov dword [0x4106f0], eax
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x2c]
xor eax, esi
mov edi, 0xab721
add eax, edi
push eax
mov eax, dword [ebp - 0x10]
xor eax, esi
add eax, edi
push eax
push dword [0x40e5ac]
mov eax, dword [0x410ad4]
push 4
push 1
push 0x410a26
push dword [eax]
call fcn.0040592c
add esp, 0x20
test byte [0x410b90], 0x80
jne 0x40908e
mov eax, dword [sym.imp.SHLWAPI.dll_ChrCmpIA]
or dword [0x410b90], 0x80
mov dword [0x4106ec], eax
mov eax, dword [0x4105ac]
mov ecx, dword [0x4106ec]
and eax, 0x5ed4
lea eax, [ecx + eax - 0x4000]
push 0x45
mov dword [0x4106ec], eax
mov eax, dword [0x4106ec]
push 0x54
call eax
mov eax, 0x100
test dword [0x410b90], eax
jne 0x4090d2
or dword [0x410b90], eax
mov eax, dword [sym.imp.KERNEL32.dll_FindNextFileA]
mov dword [0x4106e8], eax
mov al, byte [ebp + 0xb]
mov ecx, dword [fcn.0040142f]
xor al, 0xbe
sub al, 0x32
mov byte [ecx], al
mov eax, dword [sym.imp.KERNEL32.dll_GlobalAddAtomA]
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0x10]
xor eax, esi
sub ebx, eax
mov eax, dword [fcn.0040142f]
sub ebx, eax
sub ebx, edi
mov dword [eax + 1], ebx
mov eax, 0x200
test dword [0x410b90], eax
jne 0x409119
or dword [0x410b90], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
mov dword [0x4106e4], eax
mov ecx, dword [0x4105b4]
mov eax, 0x7ad2
sub eax, ecx
mov ecx, dword [0x4105b8]
add eax, ecx
mov cl, byte [0x4105b0]
shl eax, cl
xor edx, edx
mov ecx, 0xc62e
xor eax, 0x1c5d0
mov dword [ebp - 0x2c], eax
mov eax, dword [0x4105c0]
shl eax, 0x1e
div ecx
xor eax, 0x52ae
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax*4 + 0x4105c4]
mov ecx, dword [0x4105bc]
add eax, ecx
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ecx*4 + 0x4105d4]
and ecx, eax
mov eax, 0x2220
sub eax, ecx
add dword [0x4106e4], eax
mov eax, dword [0x4106e4]
call eax
mov byte [ebp - 5], 0x23
mov byte [ebp - 1], 0x3f
mov byte [ebp + 0xb], 0x11
movzx eax, byte [ebp + 0xb]
mov cl, byte [ebp - 1]
imul cl
movzx ecx, byte [ebp - 5]
or eax, ecx
sub eax, 0x98
mov byte [ebp + 0xb], al
jmp 0x4091dc
mov al, byte [0x4105ea]
movzx eax, al
and eax, 0xfffffffc
mov byte [ebp - 5], al
mov al, byte [0x4105e8]
movzx eax, al
cdq
push 3
pop ecx
idiv ecx
mov cl, 0xe3
xor al, 0xf9
sub cl, al
movzx eax, cl
movzx ecx, byte [ebp + 0xb]
sub ecx, eax
mov byte [ebp + 0xb], cl
mov al, byte [0x4105e9]
mov cl, 0x92
imul cl
mov cl, al
shr cl, 1
mov al, 0xea
sub al, cl
mov cl, byte [ebp + 0xb]
cmp cl, al
jae 0x4091ae
push dword [str.c_t]
push dword [0x40d00c]
mov eax, dword [0x410ab0]
mov eax, dword [eax + 0x198]
push dword [eax]
call fcn.0040142f
mov ecx, dword [0x410ab0]
mov ecx, dword [ecx + 0x1d0]
mov dword [ecx], eax
mov eax, dword [sym.imp.SHLWAPI.dll_PathAddExtensionW]
mov dword [ebp + 8], eax
jmp 0x40926c
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov dword [ebp + 8], eax
mov eax, dword [0x4105f0]
mov ecx, dword [0x4105ec]
and eax, ecx
xor edx, edx
mov ecx, 0x1dc5
div ecx
mov eax, dword [ebp + 8]
lea eax, [eax + edx - 0x9fa]
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
call eax
push 0x4284e65
push 0x75f5c12
call fcn.00407436
shl ecx, 0xd
or edx, ebx
mov cl, byte [0x4105fc]
mov eax, dword [0x4105f8]
shr eax, cl
mov esi, 0xd3
imul eax, eax, 0x6c42
xor eax, 0x8bb5acc
mov dword [ebp - 0x14], eax
mov al, byte [0x410608]
movzx ecx, byte [0x410609]
sub al, 0x1e
add cl, al
xor ecx, 0x8a
mov byte [ebp + 0xb], cl
mov al, byte [0x410601]
mov cl, byte [0x410600]
movzx eax, al
xor eax, esi
movzx ecx, cl
cdq
idiv ecx
mov ecx, eax
mov eax, dword [ebp - 0x14]
mov al, byte [eax + 0x410604]
imul cl
mov cl, 0xe9
sub cl, al
mov al, byte [ebp + 0xb]
cmp al, cl
jae 0x409348
movzx eax, word [0x41060c]
mov ecx, 0x43a4
or ax, cx
mov ecx, 0xe23
add ax, cx
mov cl, 0x4d
imul eax, eax, 0x16d
mov word [ebp - 8], ax
mov al, byte [0x4105f5]
sub cl, al
movzx eax, cl
mov cl, byte [0x4105f4]
shr eax, cl
movzx ecx, byte [ebp + 0xb]
xor eax, 0x61
add ecx, eax
mov byte [ebp + 0xb], cl
mov al, byte [0x410601]
mov cl, byte [0x410600]
movzx eax, al
xor eax, esi
movzx ecx, cl
cdq
idiv ecx
mov ecx, eax
mov eax, dword [ebp - 0x14]
mov al, byte [eax + 0x410604]
imul cl
mov cl, 0xe9
sub cl, al
mov al, byte [ebp + 0xb]
cmp al, cl
jb 0x4092a7
mov eax, dword [0x410610]
mov ecx, 0xee4
sub ecx, eax
or ecx, 0x391f
mov eax, 0xffffff41
sub eax, ecx
mov dword [ebp - 0x28], eax
mov eax, 0x3078
mov word [ebp + 8], ax
mov dword [ebp - 0x2c], 0x1e98
mov eax, dword [0x41061c]
mov ecx, dword [0x410618]
imul eax, ecx
mov ecx, dword [ebp - 0x2c]
sub eax, ecx
xor eax, 0x1f01
mov ecx, 0x3eb9ed
sub ecx, eax
mov dword [ebp - 0x2c], ecx
mov eax, 0x6693
mov word [ebp - 0x40], ax
mov eax, 0x6bc6
mov word [ebp - 0x3e], ax
push 7
pop eax
mov word [ebp - 0x3c], ax
mov eax, dword [ebp - 0x2c]
mov ax, word [eax*2 + 0x410620]
movzx ecx, ax
mov ax, word [0x410614]
movzx eax, ax
cdq
idiv ecx
mov ecx, dword [ebp - 0x28]
mov cl, byte [ebp + ecx*2 - 0x40]
mov dx, word [ebp + 8]
add dx, ax
movzx eax, dx
shl eax, cl
xor edx, edx
mov word [ebp + 8], ax
mov dword [ebp - 0x2c], 0xe
mov cl, byte [ebp - 0x2c]
mov eax, 0x1ac2
shl eax, cl
mov ecx, 0x2ab1
div ecx
mov ecx, dword [0x41062c]
xor edx, edx
div ecx
mov edx, 0x5280
xor eax, 0x281c
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov ax, word [eax*2 + 0x410634]
mov cx, word [0x410630]
xor cx, dx
shr cx, 7
and ax, cx
mov cx, word [ebp + 8]
cmp cx, ax
jae 0x40949d
adc byte [ecx], 0xc1
enter 0x5b8b, 0x52
sbb ah, byte [ebx]
in eax, 0x2f
push es
cmc
stosd dword es:[edi], eax
cmpsd dword [esi], dword es:[edi]
mov eax, dword [0x755]
dec ebx
add byte [eax], al
add ch, dh
pop ss
sahf
mov eax, dword [0x4b524158]
js 0x4094c9
insb byte es:[edi], dx
xor ch, byte [ebx + 0x59]
bound edx, qword [eax + 0x6c]
ja 0x40949a
arpl word [bx + si + 0x3a], bp
arpl word [ecx + 0x41], dx
xor ch, byte [edx + 0x45]
xor esi, dword [esi + 0x36]
aaa
push edi
inc ebp
xor edi, dword [edx + 0x33]
jns 0x4094bb
jp 0x4094aa
jbe 0x4094cf
dec edx
jno 0x4094b5
ja 0x4094b9
push 0x69666857
push edx
ja 0x409501
sub al, 0x75
xor eax, 0x4c706d76
inc esp
dec eax
bound ebp, qword [edx + 0x63]
jns 0x409506
inc edi
push edx
push esp
imul esi, dword [esi - 0x5f], 0x410ab0
mov eax, dword [0x410ab0]
mov eax, dword [eax + 0x1d0]
mov eax, dword [eax]
pop edi
pop esi
pop ebx
leave
ret 4
in al, dx
push eax
push ebx
push esi
push edi
bts ecx, 0x16
mov eax, dword [sym.imp.USER32.dll_GetClipboardOwner]
mov edx, 0xdca116e9
add byte [edx], al
mov dword [ebp - 0x28], eax
mov eax, dword [0x410084]
and eax, 0x1b20
inc ecx
add byte [0x1b20], ah
add cl, al
loopne 0x4094e4
shl eax, 0x11
xor eax, 0x4f6e
xor edx, edx
mov ecx, 0x6404f6e
div ecx
xor edx, edx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], 0x1cf9
mov ecx, dword [0x4100a4]
mov eax, 0x5925
inc ebp
call 0xfa24dab1
sbb al, 0
add byte [ebx + 0x4100a40d], cl
add byte [eax + 0x5925], bh
div ecx
mov ecx, dword [ebp - 0x1c]
mov eax, edx
xor eax, 0x1f58
pop ds
add byte [eax], al
xor edx, edx
div ecx
add edx, 0x19c0f02
mov dword [ebp - 0x1c], edx
mov eax, dword [0x4100a0]
mov ecx, dword [0x41009c]
add eax, 0xffffede5
or eax, ecx
mov ecx, dword [ebp - 0x1c]
add eax, 0x19bae92
cmp ecx, eax
ja 0x40958b
mov eax, dword [0x4100ac]
mov ecx, dword [0x4100a8]
imul eax, eax, 0x50cb
xor edx, edx
div ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax*4 + 0x41008c]
mov eax, dword [0x410088]
add eax, 0x6636
and ecx, eax
mov eax, dword [0x410080]
imul eax, ecx
xor eax, 0x134fe9b1
add dword [ebp - 0x1c], eax
mov eax, dword [0x4100a0]
mov ecx, dword [0x41009c]
add eax, 0xffffede5
or eax, ecx
mov ecx, dword [ebp - 0x1c]
add eax, 0x19bae92
cmp ecx, eax
jbe 0x409511
cmp ecx, 0x3fd0c4df
mov dword [ebp - 0x28], 0xfff7abc1
mov dword [ebp - 0x28], 0xfff7abfe
cmp dh, 0x33
test byte [0x410b94], 1
mov dword [ebp - 0x30], 0xff3fff9e
mov dword [ebp - 0x2c], 0xffffffff
jne 0x4095ca
mov eax, dword [sym.imp.SHLWAPI.dll_PathRenameExtensionA]
or dword [0x410b94], 1
mov dword [0x410728], eax
test byte [0x410b94], 2
mov dword [ebp - 0x38], 0xff3fffe1
mov dword [ebp - 0x34], 0xffffffff
jne 0x4095f2
mov eax, dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
or dword [0x410b94], 2
mov dword [0x410724], eax
mov dword [ebp - 0x24], 0xfff7abce
mov dword [ebp - 0x10], 0x63f8
mov dword [ebp - 0x1c], 0x4f52
mov eax, dword [ebp - 0x1c]
mov ecx, dword [0x4100b0]
or eax, 0x2376
add eax, 0x2710
xor eax, ecx
sub eax, 0x95cb
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], 0x6352
mov eax, dword [0x4100d8]
mov ecx, dword [0x4100d4]
shl eax, 9
imul ecx, eax
xor ecx, 0x394ba601
mov dword [ebp - 0x1c], ecx
mov eax, dword [0x4100d0]
xor edx, edx
mov ecx, 0x1b82
div ecx
mov eax, dword [0x4100c8]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx*4 + 0x4100dc]
add ecx, dword [ebp - 0x18]
or eax, 0xb
shl ecx, 3
and ecx, 0x3ffff8
xor ecx, 0x32973576
push ecx
mov ecx, dword [0x4100cc]
imul ecx, edx
xor ecx, 0x2b5e35cd
push ecx
mov cl, byte [0x4100c4]
shr eax, cl
xor edx, edx
add eax, 0x22f576d1
push eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax*4 + 0x4100b8]
mov esi, dword [0x4100b4]
mov eax, 0x5f51
div esi
mov eax, dword [ebp - 0x10]
sub eax, 0x47ab
or eax, 0xa38
xor eax, 0x21bdd986
imul ecx, edx
xor ecx, 0xef3ddd8
push ecx
push eax
call fcn.0040bba4
test byte [0x410b94], 4
mov byte [ebp - 9], al
jne 0x4096ee
mov eax, dword [sym.imp.SHLWAPI.dll_PathRemoveArgsA]
or dword [0x410b94], 4
mov dword [0x410720], eax
mov dword [ebp - 0x18], 0xfff7aafe
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
xor eax, 0x3126221
add eax, 0x3d26241
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x1c], 6
mov eax, dword [0x4100f0]
mov ecx, dword [0x4100f4]
add eax, ecx
mov cl, byte [ebp - 0x1c]
shr eax, cl
xor edx, edx
mov ecx, 0x1afc
xor eax, 0xc73ff1d9
push eax
mov eax, dword [0x4100ec]
div ecx
mov ecx, 0x2f01
mov eax, edx
xor edx, edx
div ecx
shl edx, 0x1e
xor edx, 0x69f933ab
push edx
call fcn.0040bfc9
and dword [ebp - 0x10], 0
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x18]
mov edi, 0x2e321
xor eax, edi
mov ebx, 0xab721
add eax, ebx
je 0x409c3e
test byte [0x410b94], 8
jne 0x409787
mov eax, dword [sym.imp.KERNEL32.dll_GetOEMCP]
or dword [0x410b94], 8
mov dword [0x41071c], eax
mov eax, dword [0x4100f8]
imul eax, eax, 0x6e000000
xor edx, edx
mov ecx, 0x536c
div ecx
mov eax, dword [0x41071c]
lea eax, [eax + edx - 0x33ec]
mov dword [0x41071c], eax
mov eax, dword [0x41071c]
call eax
mov eax, dword [ebp - 0x10]
add eax, 0xfff548df
xor eax, edi
add eax, dword [ebp - 0x14]
xor edx, edx
mov dword [ebp - 0x14], eax
mov eax, dword [sym.imp.USER32.dll_SetLastErrorEx]
mov dword [ebp - 0x24], eax
mov al, byte [0x4100fe]
mov cl, byte [0x4100fd]
imul cl
movzx ecx, byte [0x4100fc]
movzx eax, al
xor eax, 0xf7
and ecx, eax
mov byte [ebp - 9], cl
mov dword [ebp - 0x1c], 9
mov eax, dword [0x410104]
mov cl, byte [0x410100]
imul eax, eax, 0x3241
shl eax, cl
mov cl, byte [ebp - 0x1c]
shl eax, cl
mov ecx, 0x52e5
xor eax, 0xfcc80001
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 0x2c96
mov eax, dword [ebp - 0x1c]
and eax, 0x39bb
div ecx
sub edx, 0x2892
mov dword [ebp - 0xc], edx
mov dword [ebp - 4], 0x63c1
mov eax, dword [0x410130]
mov ecx, dword [0x41012c]
imul eax, ecx
mov ecx, dword [0x410128]
add eax, ecx
mov ecx, dword [0x410124]
xor ecx, eax
sub ecx, 0x2340698d
mov dword [ebp - 0x1c], ecx
mov eax, dword [0x410144]
xor eax, 0x9a3
add eax, eax
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x1c]
mov cl, byte [eax*4 + 0x410134]
mov eax, dword [ebp - 0xc]
mov edx, 0x4d07
shl edx, cl
mov cl, byte [eax*4 + 0x41010c]
mov esi, dword [0x410108]
mov eax, dword [ebp - 8]
and esi, 0x1581
shr esi, cl
mov cl, byte [eax*4 + 0x41014c]
mov eax, dword [0x410148]
or eax, 0x427a
shl eax, cl
mov ecx, 0x3b954
and eax, 0x1d73
xor eax, 0xebb20d0a
push eax
mov eax, dword [ebp - 4]
add eax, edx
xor edx, edx
div ecx
xor eax, 0xcdc1d641
push eax
mov eax, dword [ebp - 0x20]
mov cl, byte [eax*4 + 0x410118]
shr esi, cl
add esi, 0x8854551
push esi
call fcn.0040bf51
test byte [0x410b94], 0x10
mov dword [ebp - 0x24], eax
jne 0x409904
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
or dword [0x410b94], 0x10
mov dword [0x410718], eax
mov eax, dword [0x410164]
mov ecx, dword [0x410160]
and eax, 0xd0c
or ecx, eax
xor ecx, 0x7ffe
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax*4 + 0x41016c]
mov eax, dword [0x410168]
add eax, 0x317d
push 5
xor edx, edx
pop esi
div esi
xor ecx, eax
mov eax, 0x517d
sub eax, ecx
add dword [0x410718], eax
mov eax, dword [0x410718]
call eax
mov eax, dword [ebp - 0x18]
xor eax, edi
add eax, ebx
shr eax, 1
cmp dword [ebp - 0x10], eax
jbe 0x409b90
mov ecx, dword [0x410180]
mov eax, 0x2d06
sub eax, ecx
mov ecx, dword [0x41017c]
xor eax, 0x6430
sub eax, ecx
sub eax, 0x2175
mov dword [ebp - 0x24], eax
mov byte [ebp - 9], 0x79
mov byte [ebp - 5], 0xd
mov byte [ebp - 1], 0x80
mov eax, dword [0x410190]
mov ecx, dword [0x41018c]
or eax, 0x6a37
xor ecx, eax
imul ecx, ecx, 0x3970
xor ecx, 0x1458a390
mov dword [ebp - 0x1c], ecx
movzx eax, byte [ebp - 1]
movzx ecx, byte [ebp - 5]
xor eax, ecx
movzx ecx, byte [0x410187]
and eax, ecx
sub eax, 0x34
mov byte [ebp - 1], al
jmp 0x409a66
mov eax, dword [0x4101a0]
mov ecx, dword [0x41019c]
add eax, 0xffff9f13
and eax, ecx
mov ecx, dword [0x410198]
add eax, 0xffff4bf5
add ecx, eax
mov dword [ebp - 8], ecx
mov eax, dword [0x4101ac]
mov ecx, dword [0x4101a8]
add eax, 0x23b9
xor edx, edx
div ecx
mov ecx, dword [0x4101a4]
xor edx, edx
imul ecx, eax
mov eax, 0x39afbb92
div ecx
mov dl, 0x5d
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov al, byte [eax + 0x4101b4]
movzx ecx, al
mov al, byte [0x4101b0]
movzx eax, al
xor eax, ecx
mov ecx, dword [ebp - 8]
movzx ecx, byte [ecx + 0x4101bc]
xor eax, 0xbf
add ecx, eax
mov byte [ebp - 5], cl
mov eax, dword [ebp - 0x24]
mov al, byte [eax + 0x410184]
mov cl, byte [ebp - 9]
sub dl, cl
movzx ecx, byte [ebp - 1]
xor al, dl
xor al, 0xb4
add al, 0x1d
movzx eax, al
sub ecx, eax
mov byte [ebp - 1], cl
mov eax, dword [ebp - 0x1c]
mov al, byte [eax + 0x410194]
mov cl, byte [0x410188]
imul cl
mov cl, byte [ebp - 1]
add al, 0x7d
xor al, 4
cmp cl, al
jne 0x4099cf
mov eax, dword [ebp - 0x18]
xor eax, edi
add eax, ebx
shr eax, 1
mov dword [ebp - 8], eax
mov dword [ebp - 0x24], 0xb
mov eax, dword [0x4101cc]
mov cl, byte [ebp - 0x24]
imul eax, eax, 0xda9
shl eax, cl
mov ecx, dword [0x4101c8]
and eax, ecx
xor eax, 0x1802
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov ax, word [eax*2 + str._vq5Y]
movzx ecx, ax
mov eax, 0x4b4a
cdq
idiv ecx
mov ecx, 0x5aca
movzx eax, dx
cdq
idiv ecx
mov eax, 0x1ff
mov ecx, 0x1a97
add edx, 0xc8b
mov word [ebp - 0xc], dx
jmp 0x409b32
mov edx, dword [0x4101dc]
add edx, dword [0x4101d8]
mov esi, 0x41f0
shl edx, 0x15
mov dword [ebp - 0x24], edx
mov dx, word [0x4101c0]
imul dx, si
mov esi, 0x25d8
xor dx, si
shr dx, 1
mov esi, 0x3963
sub dx, si
movzx esi, word [ebp - 0xc]
movzx edx, dx
add esi, edx
mov word [ebp - 0xc], si
mov si, word [0x4101c4]
shr si, 3
and si, ax
mov edx, ecx
sub dx, si
mov si, word [ebp - 0xc]
cmp si, dx
jbe 0x409af0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
sub eax, 0x85432
imul eax, ecx
sub dword [ebp - 0x14], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
mov dword [ebp - 0x1c], eax
mov eax, dword [0x4101e4]
mov cl, byte [0x4101e0]
or eax, 0x2713
shr eax, cl
mov ecx, dword [ebp - 0x1c]
lea eax, [ecx + eax - 0xd]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
call eax
jmp 0x409c20
and ecx, 0x5804471e
mov eax, dword [ebp - 0x18]
mov dword [ebp - 8], eax
mov eax, dword [0x4101f8]
mov ecx, dword [0x4101fc]
add eax, ecx
mov ecx, dword [0x4101f4]
xor edx, edx
div ecx
mov eax, dword [0x4101f0]
sub edx, eax
add edx, 0x501a
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
movzx eax, word [eax*2 + 0x410200]
mov cx, word [0x4101ec]
or ax, cx
mov cl, byte [0x4101e8]
shl ax, cl
or eax, 0x4ad8
mov word [ebp - 0xc], ax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
add eax, 0x855d2
imul eax, ecx
sub dword [ebp - 0x14], eax
mov al, byte [0x410208]
mov cl, byte [0x410207]
movzx eax, al
movzx ecx, cl
xor eax, 0x4b
and ecx, eax
movzx eax, byte [0x410206]
sub ecx, eax
mov byte [ebp - 9], cl
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x14]
and eax, ecx
inc dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
xor eax, edi
add eax, ebx
cmp dword [ebp - 0x10], eax
jb 0x40976d
test byte [0x410b94], 0x20
jne 0x409c58
mov eax, dword [sym.imp.SHLWAPI.dll_IsCharSpaceW]
or dword [0x410b94], 0x20
mov dword [0x410714], eax
mov eax, dword [0x41020c]
add eax, 0x46a4
imul eax, eax, 0x384b
xor eax, 0x1a0a51a4
add dword [0x410714], eax
mov eax, dword [0x410714]
push 0x70
call eax
mov eax, dword [sym.imp.SHLWAPI.dll_PathIsPrefixA]
mov dword [ebp - 0x24], eax
mov eax, dword [0x410798]
cmp eax, 0x55379690
jne 0x409cfb
mov dword [ebp - 0x24], 0x3df8
mov eax, dword [ebp - 0x24]
imul eax, eax, 0x219
xor edx, edx
mov ecx, 0x163
div ecx
xor edx, edx
push 0x3b
mov ecx, eax
mov eax, 0x11937
div ecx
mov ecx, 0x6dfe
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
movzx eax, word [eax*2 + 0x410210]
add ax, cx
imul eax, eax, 0x45b9
mov word [ebp - 0xc], ax
mov al, byte [0x410219]
movzx ecx, al
mov al, byte [0x410218]
shl al, cl
pop ecx
movzx eax, al
cdq
idiv ecx
mov byte [ebp - 9], dl
mov eax, dword [ebp - 0x28]
xor eax, edi
add eax, ebx
mov dword [0x410798], eax
test byte [0x410b94], 0x40
jne 0x409d15
mov eax, dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
or dword [0x410b94], 0x40
mov dword [0x410710], eax
mov eax, dword [0x410220]
mov ecx, dword [0x41021c]
imul eax, ecx
xor eax, 0xffffcbc7
and eax, 0x7cf9
add dword [0x410710], eax
mov eax, dword [0x410710]
call eax
mov eax, dword [ebp - 0x18]
and dword [ebp - 0x1c], 0
xor eax, edi
add eax, ebx
je 0x40a294
mov esi, 0x87a6
jmp 0x409d57
mov ebx, 0xab721
mov dword [ebp - 0x20], 0x2dbc
mov dword [ebp - 0x24], 5
mov eax, dword [0x41022c]
mov ecx, dword [0x410228]
and eax, ecx
mov ecx, dword [0x410224]
add ecx, eax
xor ecx, 0x617f
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x50], 0x6877
mov dword [ebp - 0x4c], 0x3886
mov dword [ebp - 0x48], 3
mov dword [ebp - 0x44], 0x3a7a
mov eax, dword [ebp - 0x28]
mov cl, byte [ebp + eax*4 - 0x50]
mov eax, dword [0x410230]
shl eax, 0x19
shr eax, cl
mov cl, byte [ebp - 0x24]
xor eax, 0xdd656771
push eax
mov eax, dword [ebp - 0x20]
shl eax, cl
xor eax, 0x139e
sub eax, 0x7142cf30
push eax
call fcn.0040baf9
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x1c]
add eax, 0xfff548df
xor eax, edi
add eax, dword [ebp - 0x14]
mov ecx, 0xec0f2eec
mov dword [ebp - 0x14], eax
mov eax, dword [0x410234]
add eax, 0x34ef
and eax, 0x482e
xor eax, 0x3270
sub ecx, eax
push ecx
call fcn.0040bf3c
mov byte [ebp - 9], al
mov eax, dword [0x410238]
mov ecx, dword [0x41023c]
or eax, ecx
or eax, 0x567f
xor eax, 0x7efd
mov dword [ebp - 0x24], eax
mov cl, byte [0x410260]
mov eax, dword [0x41025c]
shl eax, cl
mov ecx, dword [0x410258]
xor edx, edx
xor ecx, eax
xor ecx, 0x6612f6f
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [eax*4 + 0x410264]
and eax, 0x485
mov ecx, 0xae2
div ecx
mov eax, dword [0x410254]
or eax, 0x3b6b0
shr eax, 3
mov ecx, 0xfdfa664f
sub ecx, eax
mov eax, dword [ebp - 0x24]
xor edx, 0xcabc378c
push edx
push ecx
mov cl, byte [eax*4 + 0x410240]
mov eax, 0x4834
shr eax, cl
xor eax, 0xe538ff1f
push eax
call fcn.0040c471
mov byte [ebp - 9], al
cmp dx, 0xa2a1
mov eax, dword [0x410270]
xor edx, edx
mov ecx, 0x27a3
div ecx
shl edx, 0x1b
xor edx, 0x90000002
mov dword [ebp - 0x28], edx
mov al, byte [0x410275]
shl al, 6
movzx ecx, al
mov al, byte [0x410274]
movzx eax, al
and eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ecx + 0x410278]
imul ecx, eax
mov byte [ebp - 9], cl
mov cl, byte [0x41027d]
mov al, byte [0x41027c]
sub al, cl
mov cl, byte [0x41027b]
shr al, cl
mov cl, byte [ebp - 9]
sub al, 0x75
cmp cl, al
jbe 0x409f5c
insd dword es:[edi], dx
inc ebx
pop ecx
cmc
leave
push ebx
test byte [bx], cl
push esi
jnp 0x409f18
mov ecx, eax
inc ebp
mov al, byte [0x4e000007]
add byte [eax], al
add cl, bl
xor dh, byte [ebp + eax*2 + 0x424c6d50]
outsb dx, byte [esi]
jne 0x409f7f
jns 0x409f78
jo 0x409f81
push 0x6b366e32
cmp dh, byte [ebx + 0x4b]
xor ch, byte [esi + 0x36]
imul edi, dword [edx], 0x73
dec ebx
inc edx
dec ebx
jno 0x409f5a
outsb dx, byte [esi]
dec edi
dec esi
dec ebx
dec edx
xor eax, 0x6b71777b
pop edx
jp 0x409f69
xor byte [esi], dh
inc ecx
insb byte es:[edi], dx
jbe 0x409f7c
xor ch, byte [ebp + 0x51]
bound edi, qword [edx]
insd dword es:[edi], dx
push bx
cmp dword [edx + 0x46], ebp
push 0x78
arpl word [esi + 0x32], si
push 0x2c6d6852
xor al, 0x6c
pop edx
jp 0x409fa8
push ebx
jno 0x409f90
jne 0x409f90
dec esp
ja 0x409f8f
xor al, 0x32
xor ah, byte [esi - 0x67]
cwd
mov eax, dword [ebp - 0x18]
xor eax, edi
add eax, ebx
shr eax, 1
cmp dword [ebp - 0x1c], eax
jbe 0x409fad
in al, 0x76
inc ecx
mov al, byte [0x410280]
mov cl, byte [0x41027f]
sub cl, al
mov al, byte [0x41027e]
imul cl
movzx eax, al
enter 0x7ea0, 2
inc ecx
add dh, dh
jmp 0x9a015593
mov dh, 0xc0
cdq
mov ecx, 0x85
idiv ecx
mov byte [ebp - 9], dl
mov eax, dword [ebp - 0x18]
xor eax, edi
add eax, ebx
inc ebp
call 0xc34466c8
shr eax, 1
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
sub eax, 0x85432
jmp 0x40a226
mov dword [ebp - 0x28], 0x2f25
mov eax, dword [ebp - 0x28]
mov ecx, dword [0x410284]
shl eax, 0xa
sub eax, ecx
xor eax, 0xbc801a
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], 0x1ab5
mov ecx, dword [0x410294]
mov eax, dword [0x410290]
add ecx, 0xffffc877
imul eax, ecx
mov ecx, dword [ebp - 0x28]
or ecx, eax
mov eax, 0x1935ab7
sub eax, ecx
mov dword [ebp - 0x24], eax
mov eax, dword [0x4102b0]
mov cl, byte [0x4102ac]
xor eax, 0x6f2d
shl eax, cl
xor edx, edx
mov ecx, 0x1b3a00
div ecx
mov dword [ebp - 0x28], eax
mov eax, 0x40d7
mov word [ebp - 0x40], ax
mov eax, 0x3d15
mov word [ebp - 0x3e], ax
mov eax, 0x38da
mov word [ebp - 0x3c], ax
mov eax, 0x5be4
mov word [ebp - 0x3a], ax
mov eax, 0x6c46
mov word [ebp - 4], ax
mov eax, 0x56cc
mov word [ebp - 8], ax
mov eax, dword [ebp - 0x28]
mov ax, word [ebp + eax*2 - 0x40]
movzx ecx, ax
mov ax, word [0x4102b8]
mov dx, word [0x4102b4]
sub dx, ax
movzx eax, dx
cdq
idiv ecx
mov eax, 0xec7e
sub eax, edx
mov word [ebp - 0xc], ax
jmp 0x40a107
mov eax, dword [0x4102cc]
mov ecx, dword [0x4102c8]
shr eax, 9
xor ecx, eax
sub ecx, 0x67a
xor ecx, 0x3888
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov ax, word [eax*2 + 0x4102d0]
mov ecx, 0x1980
add ax, cx
movzx ecx, word [0x4102c4]
movzx eax, ax
or ecx, eax
mov word [ebp - 0x10], cx
mov eax, dword [ebp - 0x24]
mov ax, word [eax*2 + 0x410298]
movzx ecx, ax
mov ax, word [0x41028c]
movzx eax, ax
cdq
idiv ecx
mov cx, word [0x410288]
movzx ecx, cx
movzx eax, ax
cdq
idiv ecx
mov ecx, dword [ebp - 0x20]
mov cl, byte [ecx*2 + 0x4102a4]
shl ax, cl
mov ecx, 0x4001
add ax, cx
movzx ecx, word [ebp - 0xc]
movzx eax, ax
sub ecx, eax
mov word [ebp - 0xc], cx
mov ax, word [ebp - 8]
mov cx, word [ebp - 4]
movzx ecx, cx
movzx eax, ax
xor eax, ecx
mov cx, word [0x4102c0]
movzx ecx, cx
and eax, ecx
mov cx, word [0x4102bc]
movzx ecx, cx
cdq
idiv ecx
mov cx, word [ebp - 0xc]
xor eax, esi
cmp cx, ax
jae 0x40a079
mov eax, dword [ebp - 0x18]
mov dword [ebp - 8], eax
mov eax, dword [0x4102e8]
or eax, 0x55b3
xor edx, edx
mov ecx, 0x6ab6
div ecx
mov eax, dword [0x4102e4]
or eax, edx
sub eax, 0x7fb9
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov ax, word [eax*2 + 0x4102ec]
movzx ecx, ax
movzx eax, word [0x4102e0]
and eax, ecx
movzx ecx, word [0x4102dc]
and eax, 0x4df4
or ecx, eax
mov word [ebp - 0xc], cx
mov ax, word [0x4102f8]
mov ecx, 0x44a0
sub ax, cx
mov cx, word [0x4102f4]
movzx eax, ax
movzx ecx, cx
cdq
idiv ecx
mov ax, word [ebp - 0xc]
cmp ax, dx
jae 0x40a218
cmp al, 0x60
dec esi
cmpsd dword [esi], dword es:[edi]
xlatb
stc
adc byte [ebx + 0x345f1a51], cl
xor eax, 0xee4f6584
pop es
add byte [eax], al
inc ebp
add byte [eax], al
add byte [0x534f582e], dh
inc esp
jp 0x40a22b
jae 0x40a23e
inc edx
push esp
dec esi
outsd dx, dword [esi]
js 0x40a22a
inc ebp
insb byte es:[edi], dx
aaa
pop eax
jp 0x40a236
bound ecx, qword [ebp + 0x2b]
xor ah, byte [ecx + 0x54]
jbe 0x40a242
xor dword [eax + 0x56], ecx
dec ebp
inc ebx
dec edx
push edx
xor edi, dword [ecx + 0x72]
push 0x43756233
push ebx
jb 0x40a238
push ecx
sub al, 0x47
xor al, 0x69
xor dword [ebp + 0x59], ecx
dec edi
push ecx
sub esi, dword [edx + 0x6a]
pop eax
jne 0x40a27d
outsb dx, byte [esi]
inc edi
pop ecx
push esi
pop ecx
inc esi
xor byte [ebx + 0x4d8be845], cl
ror byte [ebx - 0x2dfa2bab], 1
push ebp
or byte [eax], al
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
add eax, 0x855d2
imul eax, ecx
sub dword [ebp - 0x14], eax
inc ebp
in al, dx
mov ecx, dword [0x410300]
xor edx, edx
mov eax, 0x62f
push es
add byte [eax], al
add bh, dh
int1
div ecx
mov ecx, dword [0x4102fc]
add al, byte [ecx]
add ecx, eax
mov dword [ebp - 0x28], ecx
enter 0x4d89, 0xffffffffffffffd8
mov eax, 0x2e88
mov word [ebp - 0xc], ax
mov ax, word [ebp - 0xc]
movzx ecx, ax
mov eax, 0x785
cdq
idiv ecx
mov cl, byte [0x410304]
movzx eax, dx
shr eax, cl
mov word [ebp - 0x10], ax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x14]
and eax, ecx
mov dword [ebp - 0x14], eax
xor ebx, 0x1df81272
mov eax, dword [ebp - 0x18]
inc dword [ebp - 0x1c]
xor eax, edi
add eax, 0xab721
cmp dword [ebp - 0x1c], eax
jb 0x409d52
sbb eax, 0xffe8458b
inc ebp
in al, 0x33
mov dword [0xab721], 0xfe44539
cmp byte [esi - 0x3e000006], 0xdb
adc dword [eax + 0x75ffa7fc], eax
or al, ch
invalid
rcr ebx, 0x11
cmp ah, 0xa7
push dword [ebp + 8]
call fcn.00408469
test byte [0x410b94], 0x80
mov esi, eax
jne 0x40a2c1
mov eax, dword [sym.imp.SHLWAPI.dll_IsCharSpaceW]
or dword [0x410b94], 0x80
mov dword [0x41070c], eax
mov eax, dword [0x41030c]
add eax, 0x5bb6
shr eax, 1
mov ecx, 0x4073
sub ecx, eax
mov dword [ebp + 8], ecx
mov eax, dword [ebp + 8]
mov eax, dword [eax*4 + 0x410310]
mov ecx, dword [0x410308]
and eax, ecx
mov ecx, dword [0x41070c]
xor eax, 0x937
lea eax, [ecx + eax - 0x2115]
mov dword [0x41070c], eax
mov eax, dword [0x41070c]
push 0x6f
call eax
mov eax, 0x2240
mov word [ebp + 8], ax
movzx eax, word [ebp + 8]
mov cx, word [0x410324]
and eax, 0x3fc6
cdq
movzx ecx, cx
idiv ecx
mov word [ebp + 8], dx
mov ax, word [0x410328]
mov cx, word [ebp + 8]
xor ax, 4
shl ax, 6
cmp cx, ax
jb 0x40a3ad
pop dword [esi - 0x1c]
sar byte [ebx + 0x47722f19], cl
mov ah, 0xce
pop es
mov ecx, 0x33fe0ce9
or byte [eax], al
add byte [esi], cl
add byte [eax], al
mov ecx, 0x4ffe00d1
jp 0x40a39b
jp 0x40a3dd
push edi
xor dh, byte [edi + 0x6c]
cmp dword [eax], esi
jno 0x40a3d2
insb byte es:[edi], dx
pop eax
bound edx, qword [esi + 0x4e]
cmp byte [ecx + 0x4e], bh
insd dword es:[edi], dx
inc edi
pop edx
dec edi
push esi
push edx
push edx
insb byte es:[edi], dx
sub esi, dword [edx]
jns 0x40a3e5
dec edi
bound edx, qword [edi + 0x4c]
aaa
dec ebx
pop eax
cmp dl, byte [ebp + 0x35]
jno 0x40a3fb
cmp dword [ebp + 0x66], ecx
pop ecx
dec ebp
push edi
xor eax, 0x625b314a
jp 0x40a3ec
jae 0x40a3e5
pop eax
dec edx
pop ecx
xor edx, dword [eax + 0x79]
dec eax
xor byte [esi + 0x62], ch
outsd dx, dword [esi]
inc ebx
pop ecx
inc ecx
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 4
retf 0x5653
push eax
mov ebx, 0x8bd12bc1
or eax, 0x40fc90
push edx
xor edx, edx
div ecx
cld
inc eax
add byte [edx + 0x33], dl
sal bh, cl
int1
mov eax, dword [0x40fc8c]
mov ecx, dword [0x40fc88]
imul eax, ecx
mov cl, byte [0x40fc84]
shl eax, 7
sub eax, 0x794cd6c3
add edx, 0x48494e03
push edx
push eax
mov eax, dword [0x40fc80]
shr eax, cl
push 0x62
pop ecx
xor edx, edx
imul eax, eax, 0x7744
div ecx
add eax, 0x2e50399e
push eax
call fcn.0040c554
mov word [esp + 0x10], ax
mov eax, dword [0x40fca0]
imul eax, eax, 0x4a53
xor eax, 0x1228
mov dword [esp + 0x34], eax
mov eax, dword [sym.imp.USER32.dll_GetSysColor]
mov dword [esp + 0x14], eax
mov eax, dword [0x40fcac]
mov ecx, dword [0x40fca8]
add eax, 0xca
shr eax, 4
and ecx, eax
sub ecx, 0x10
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [eax*4 + 0x40fcb0]
xor edx, edx
mov eax, 0x6b29
div ecx
mov cl, byte [0x40fca4]
mov eax, dword [0x40fcc0]
xor eax, 0x4f00
add eax, 0xffffc502
shr edx, cl
mov ecx, dword [0x40fcbc]
xor edx, 4
add dword [esp + 0x14], edx
xor edx, edx
div ecx
add edx, 0x2915cc85
mov dword [esp + 0x50], edx
push dword [esp + 0x50]
mov eax, dword [esp + 0x18]
call eax
mov esi, 0x80000
call dword [sym.imp.KERNEL32.dll_GetTickCount]
dec esi
jne 0x40a4c3
test byte [0x410b98], 1
jne 0x40a4e6
mov eax, dword [sym.imp.USER32.dll_AllowSetForegroundWindow]
or dword [0x410b98], 1
mov dword [0x41073c], eax
mov dword [esp + 0xc], 0x5f31
mov eax, dword [esp + 0xc]
mov ecx, dword [0x40fcc4]
shr eax, 2
add eax, 0xa
or eax, ecx
xor eax, 0x17d6
add dword [0x41073c], eax
mov eax, dword [0x40fcc8]
or eax, 0x419e
mov ecx, 0xcaa12e86
sub ecx, eax
mov dword [esp + 0x4c], ecx
push dword [esp + 0x4c]
mov eax, dword [0x41073c]
call eax
mov eax, dword [sym.imp.SHLWAPI.dll_StrCmpICA]
mov dword [esp + 0x34], eax
mov eax, dword [sym.imp.SHLWAPI.dll_ChrCmpIW]
mov dword [esp + 0x14], eax
mov ecx, dword [0x40fcd4]
mov eax, dword [0x40fcd0]
xor edx, edx
div ecx
mov cl, byte [0x40fccc]
push 0x52
push 0x44
shr eax, cl
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + eax - 0x1b]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
call eax
mov eax, dword [0x40fce0]
mov ecx, dword [0x40fcdc]
shr eax, 4
xor edx, edx
div ecx
mov eax, dword [0x40fcd8]
imul eax, eax, 0x79f2
mov ecx, 0x62c7
xor edx, 0xe06f9a87
push edx
xor edx, edx
div ecx
add edx, 0x1c9f3739
push edx
call fcn.0040c3a2
mov byte [esp + 0x18], al
mov dword [esp + 0x38], 0xff3fff9e
mov dword [esp + 0x3c], 0xffffffff
mov dword [esp + 0x1c], 0x13ae
mov eax, dword [0x40fce8]
mov ecx, dword [0x40fcec]
add eax, ecx
mov ecx, dword [0x40fce4]
xor ecx, eax
xor edx, edx
mov eax, 0xb6df
div ecx
xor edx, edx
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], 0x65dd
mov ecx, dword [0x40fd0c]
mov eax, dword [0x40fd08]
div ecx
mov ecx, dword [0x40fd00]
xor edx, edx
imul ecx, eax
mov eax, dword [0x40fd04]
imul eax, ecx
xor eax, 0x21d2e25f
push eax
mov eax, dword [esp + 0x10]
mov ecx, 0x4e66
div ecx
mov eax, dword [0x40fcfc]
or edx, eax
mov eax, dword [esp + 0x18]
sub edx, 0x1c50bab2
push edx
mov cl, byte [eax*4 + 0x40fcf0]
mov eax, dword [esp + 0x24]
shr eax, cl
xor edx, edx
mov ecx, 0x30e6
div ecx
shr edx, 2
add edx, 0x28cf8ec8
push edx
call fcn.0040be0e
mov word [esp + 0x10], ax
mov eax, dword [0x40fd14]
mov ecx, dword [0x40fd18]
add eax, ecx
mov ecx, dword [0x40fd10]
xor edx, edx
div ecx
xor edx, edx
sub eax, 0x9e27
mov dword [esp + 0x20], eax
mov dword [esp + 0x58], 8
mov dword [esp + 0x5c], 0x7677
mov dword [esp + 0x60], 0x2d00
mov dword [esp + 0x64], 0x2a6d
mov dword [esp + 0x14], 0x2bd
mov eax, dword [0x40fd3c]
mov cl, byte [0x40fd38]
add eax, 0x7abb
shl eax, cl
sub eax, 0x3cd900
mov dword [esp + 0xc], eax
mov eax, dword [0x40fd5c]
shr eax, 1
imul eax, eax, 0x2890
sub eax, 0x9b95d70
mov dword [esp + 0x1c], eax
mov ecx, dword [0x40fd88]
mov eax, dword [0x40fd84]
div ecx
mov edx, dword [0x40fd80]
and edx, eax
mov eax, dword [esp + 0xc]
mov esi, dword [eax*4 + 0x40fd40]
mov eax, dword [esp + 0x14]
mov edi, dword [0x40fd30]
mov cl, byte [0x40fd28]
imul edi, edi, 0x5cd3
mov ebx, dword [0x40fd24]
and esi, eax
mov eax, dword [0x40fd7c]
or eax, edx
add eax, 0x351803b2
push eax
mov eax, dword [esp + 0x20]
shl ebx, cl
mov ecx, dword [eax*4 + 0x40fd68]
mov eax, dword [0x40fd64]
mov edx, dword [0x40fd60]
imul eax, edx
xor edx, edx
div ecx
mov ecx, 0x31a49b69
sub ecx, eax
mov eax, dword [0x40fd58]
push ecx
mov ecx, dword [0x40fd54]
or eax, ecx
shl eax, 5
xor eax, 0xf258b36e
push eax
mov eax, dword [0x40fd50]
mov cl, byte [0x40fd34]
add eax, 0x5516
xor eax, 0xe36e0
shr eax, 5
sub eax, 0x19904981
push eax
shr esi, cl
mov eax, 0xf59a77d
sub eax, esi
push eax
mov eax, dword [0x40fd2c]
mov ecx, dword [0x40fd20]
add eax, edi
xor eax, 0xb50e1b5e
push eax
mov eax, ebx
xor edx, edx
div ecx
and eax, 0x4d71
add eax, 0x1c4ee59
push eax
mov eax, dword [esp + 0x3c]
mov cl, byte [esp + eax*4 + 0x74]
mov eax, dword [0x40fd1c]
shr eax, 9
shl eax, cl
add eax, 0x6aa874a0
push eax
call fcn.0040c125
mov byte [esp + 0x18], al
mov dword [esp + 0x40], 0xff3fffe1
mov dword [esp + 0x44], 0xffffffff
mov ax, word [0x40fd8c]
mov ecx, 0x6dcc
add ax, cx
movzx eax, ax
cdq
push 6
pop ecx
idiv ecx
xor edx, edx
push 0xf
mov word [esp + 0x14], ax
mov esi, dword [0x40fdac]
mov cl, byte [0x40fda8]
imul esi, esi, 0x1917
mov eax, dword [0x40fda0]
shr esi, cl
xor eax, 0x70dc
mov ecx, 0x6c6a
div ecx
mov eax, dword [0x40fd98]
pop ecx
mov edi, edx
xor edx, edx
div ecx
mov cl, byte [0x40fda4]
shr esi, cl
mov cl, byte [0x40fd9c]
shr edi, cl
mov ecx, dword [0x40fd94]
add esi, 0x689a8172
push esi
add edi, 0x47f35ee0
push edi
xor ecx, eax
mov eax, dword [0x40fd90]
imul eax, eax, 0x432
shr eax, 0x15
imul eax, eax, 0x5ae87d
xor ecx, 0xb8493034
push ecx
push eax
call fcn.0040bb32
mov byte [esp + 0x18], al
mov ax, word [0x40fdb0]
mov ecx, 0x3649
imul ax, cx
movzx eax, ax
shl eax, 0xe
mov word [esp + 0x10], ax
mov dword [esp + 0x1c], 0x50ce
mov dword [esp + 0x14], 0x5faa
mov eax, dword [0x40fdc4]
xor edx, edx
mov ecx, 0x7f5
div ecx
mov eax, dword [0x40fdc0]
mov cl, byte [0x40fdbc]
add eax, edx
shr eax, cl
xor eax, 0x6a
mov dword [esp + 0xc], eax
mov eax, dword [0x40fddc]
mov ecx, dword [0x40fdd8]
xor eax, 0x52b5
xor edx, edx
div ecx
mov cl, byte [0x40fdd4]
mov eax, dword [esp + 0xc]
mov eax, dword [eax*4 + 0x40fdc8]
shl edx, cl
mov ecx, dword [esp + 0x14]
and eax, ecx
sub eax, 0x4e8ae488
xor edx, 0x2b1468eb
push edx
push eax
mov eax, dword [esp + 0x24]
xor edx, edx
mov ecx, 0x783b
div ecx
mov ecx, dword [0x40fdb8]
mov eax, dword [0x40fdb4]
shl edx, 0x12
xor edx, 0x1d6943b1
push edx
xor edx, edx
div ecx
xor eax, 0x54a0
sub eax, 0x5438566e
push eax
call fcn.0040c2d2
mov word [esp + 0x10], ax
mov eax, dword [0x40fde4]
mov ecx, dword [0x40fde0]
shr eax, 0xa
xor edx, edx
div ecx
xor edx, 0x10
mov dword [esp + 0x14], edx
mov edi, dword [0x40fe18]
mov cl, byte [0x40fe14]
xor edx, edx
lea edi, [edi - 0x1a09]
shr edi, cl
mov ecx, dword [0x40fe0c]
mov eax, dword [0x40fe08]
div ecx
mov esi, dword [0x40fe00]
mov eax, dword [0x40fdec]
mov ecx, 0x6465
shr esi, 0xd
and esi, 0x31b5
mov ebx, edx
xor edx, edx
div ecx
mov cl, byte [0x40fde8]
mov eax, dword [0x40fe10]
mov dword [esp + 0xc], eax
mov eax, edi
shr edx, cl
lea ecx, [edx - 0x46628a7b]
xor edx, edx
div dword [esp + 0xc]
mov eax, dword [0x40fe04]
or eax, ebx
shr eax, 4
xor edx, 0x914d2990
push edx
mov edx, 0x97794db3
sub edx, eax
mov eax, dword [0x40fdfc]
imul eax, esi
xor eax, 0xaaf8bd6
push edx
push eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax*4 + 0x40fdf0]
add eax, ecx
push eax
call fcn.0040c1f4
mov byte [esp + 0x18], al
mov eax, dword [ebp + 8]
mov dword [0x40e5b0], eax
mov eax, dword [ebp + 0xc]
test byte [0x410b98], 2
mov dword [0x40e5b4], eax
jne 0x40aa19
mov eax, dword [sym.imp.SHLWAPI.dll_IsCharSpaceW]
or dword [0x410b98], 2
mov dword [0x410738], eax
mov eax, dword [0x40fe1c]
mov ecx, dword [0x410738]
and eax, 0x221
or eax, 0x49dc
lea eax, [ecx + eax - 0x49fc]
mov dword [0x410738], eax
mov eax, dword [0x410738]
push 0x77
call eax
mov dword [esp + 0xc], 0x55c0
mov ecx, dword [0x40fe30]
mov esi, dword [0x40fe24]
xor edx, edx
mov eax, 0x2965
div esi
mov edx, dword [0x40fe2c]
shr ecx, 1
and edx, ecx
mov ecx, dword [esp + 0xc]
add ecx, 0x557
xor edx, 0x5252375a
and ecx, 0x1fde
push edx
mov edx, dword [0x40fe28]
sub ecx, edx
xor ecx, 0xf045ff49
push ecx
mov ecx, dword [0x40fe20]
and ecx, eax
sub ecx, 0x2260deda
push ecx
call fcn.0040c490
mov dword [esp + 0x34], eax
inc edx
mov dword [esp + 0x1c], 0xfff7aafe
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
xor eax, 0x3126221
add eax, 0x3d26241
mov dword [esp + 0x20], eax
mov ecx, dword [0x40fe38]
xor edx, edx
mov eax, 0x3ef9
div ecx
and dword [esp + 0x14], 0
mov esi, 0x2e321
mov ebx, 0xab721
add eax, 0x391f
xor eax, 0x781a
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov al, byte [eax + 0x40fe40]
movzx ecx, al
mov al, byte [0x40fe3c]
shr al, 1
shl al, cl
movzx ecx, byte [0x40fe34]
movzx eax, al
xor ecx, eax
mov byte [esp + 0x18], cl
mov eax, dword [esp + 0x1c]
xor eax, esi
add eax, ebx
je 0x40b020
mov byte [esp + 0x18], 0x6d
mov eax, dword [0x40fe48]
mov ecx, dword [0x40fe44]
and eax, 0x484a
or ecx, eax
sub ecx, 0x4dc8
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0xc]
mov al, byte [eax + 0x40fe4c]
movzx ecx, al
movzx eax, byte [esp + 0x18]
shl al, cl
sub al, 0xe
and eax, 0x16
mov byte [esp + 0x18], al
mov eax, dword [esp + 0x14]
lea ecx, [eax - 0xab721]
xor ecx, esi
add ecx, dword [esp + 0x20]
mov dword [esp + 0x20], ecx
cmp ah, cl
mov ecx, dword [sym.imp.USER32.dll_LoadBitmapA]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x1c]
xor ecx, esi
add ecx, ebx
shr ecx, 1
cmp eax, ecx
jbe 0x40ac12
mov eax, dword [esp + 0x1c]
xor eax, esi
add eax, ebx
shr eax, 1
test byte [0x410b98], 4
mov dword [esp + 0x30], eax
jne 0x40abbb
mov eax, dword [sym.imp.SHLWAPI.dll_ChrCmpIA]
or dword [0x410b98], 4
mov dword [0x410734], eax
mov dword [esp + 0x10], 0x1eac
mov dword [esp + 0xc], 0x50b4
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov cl, byte [0x40fe50]
sub edx, eax
shl edx, cl
mov eax, 0xdf800000
push 0x6b
push 0x6b
sub eax, edx
add dword [0x410734], eax
mov eax, dword [0x410734]
call eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
sub eax, 0x85432
imul eax, ecx
sub dword [esp + 0x20], eax
jmp 0x40aced
test byte [0x410b98], 8
jne 0x40ac2c
mov eax, dword [sym.imp.SHLWAPI.dll_IsCharSpaceW]
or dword [0x410b98], 8
mov dword [0x410730], eax
mov eax, dword [0x40fe60]
mov ecx, dword [0x40fe5c]
imul eax, ecx
mov ecx, dword [0x40fe58]
xor edx, edx
div ecx
mov cl, byte [0x40fe54]
push 0x66
shr edx, cl
xor edx, 0x1312
mov dword [esp + 0x10], edx
mov dword [esp + 0x6c], 0x1246
mov dword [esp + 0x70], 0x4929
mov dword [esp + 0x74], 0x24e
mov dword [esp + 0x78], 0x60d8
mov eax, dword [esp + 0x10]
mov eax, dword [esp + eax*4 + 0x6c]
or eax, 0x65a5
xor eax, 0x67ef
add dword [0x410730], eax
mov eax, dword [0x410730]
call eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
add eax, 0x855d2
imul eax, ecx
sub dword [esp + 0x20], eax
mov eax, dword [sym.imp.SHLWAPI.dll_IsCharSpaceW]
mov dword [esp + 0x10], eax
mov eax, dword [0x40fe6c]
mov ecx, dword [0x40fe68]
or eax, ecx
mov cl, byte [0x40fe64]
shl eax, cl
mov ecx, 0x5280
push 0x71
and eax, 0x52bc
sub ecx, eax
add dword [esp + 0x14], ecx
mov eax, dword [esp + 0x14]
call eax
mov eax, dword [0x40fe90]
xor eax, 0x4ba0
and eax, 0xffffffe0
lea eax, [eax*4 - 0xd27f]
mov dword [esp + 0x28], eax
mov eax, dword [0x40feb0]
imul eax, eax, 0xffffc999
and eax, 0x463d
sub eax, 0x60c
mov dword [esp + 0x10], eax
mov eax, dword [0x40fec8]
mov ecx, dword [0x40fec4]
or eax, ecx
mov ecx, dword [0x40fec0]
shr eax, 5
imul ecx, eax
sub ecx, 0x31ab50
mov dword [esp + 0x2c], ecx
mov dword [esp + 0xc], 5
mov ecx, dword [esp + 0xc]
xor edx, edx
mov eax, 0x5c97
div ecx
xor edx, edx
mov ecx, 0x14b0
mov edi, 0x49ed
div ecx
mov eax, 0x1284
sub eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x10]
mov cl, byte [eax*4 + 0x40feb4]
mov eax, dword [0x40feac]
shr eax, cl
mov ecx, dword [0x40fe84]
mov edx, dword [0x40fe7c]
sub edi, ecx
mov cl, byte [0x40fe78]
or edx, 0x67f3
mov dword [esp + 0x10], edx
shl dword [esp + 0x10], cl
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx*4 + 0x40fee4]
mov edx, dword [0x40fee0]
sub edx, ecx
mov ecx, dword [esp + 0x2c]
mov ecx, dword [ecx*4 + 0x40fecc]
or ecx, 0x112d
shl edx, 0x1d
add edx, 0xfe62476
push edx
add ecx, 0x1a7e
xor ecx, 0x6af0adfc
push ecx
mov ecx, dword [0x40fea8]
and ecx, eax
mov eax, dword [esp + 0x30]
xor ecx, 0x55f6b1c3
push ecx
mov ecx, dword [eax*4 + 0x40fe94]
mov eax, dword [0x40fe8c]
xor edx, edx
div ecx
mov eax, dword [0x40fe88]
mov cl, byte [0x40fe80]
and eax, 0x2803
or eax, 0x10d8
sub eax, 0x51c49c82
shr edi, cl
mov ecx, dword [0x40fe74]
or edx, 0x683b
sub edx, 0x8042b7b
push edx
push eax
mov eax, 0x561ace0f
sub eax, edi
push eax
mov eax, dword [esp + 0x28]
xor edx, edx
div ecx
add eax, 0x6502ebbb
push eax
mov eax, dword [0x40fe70]
xor edx, edx
mov ecx, 0x1903
div ecx
mov ecx, 0x4820
mov eax, edx
add eax, eax
xor edx, edx
div ecx
mov eax, 0x74b1b9df
sub eax, edx
push eax
call fcn.0040c189
mov word [esp + 0x10], ax
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x20]
and eax, ecx
mov dword [esp + 0x20], eax
mov cl, byte [0x40fef8]
mov eax, dword [0x40fef4]
shl eax, cl
mov ecx, dword [0x40fef0]
mov edx, 0x2332
add ecx, eax
xor ecx, 0xb1e94e0
mov dword [esp + 0xc], ecx
mov cl, byte [0x40ff00]
mov eax, dword [esp + 0xc]
shr edx, cl
mov ecx, dword [eax*4 + 0x40ff04]
mov eax, dword [0x40fefc]
add eax, edx
xor edx, edx
div ecx
mov eax, 0x7f66
mov dword [esp + 0x34], edx
mov dword [esp + 0x28], 0x4d4d
mov dword [esp + 0x2c], 0xce2
mov ecx, dword [0x40ff2c]
xor edx, edx
div ecx
mov ecx, dword [0x40ff28]
xor edx, edx
shl eax, 0x14
div ecx
sub edx, 0x357e
mov dword [esp + 0x30], edx
mov dword [esp + 0x10], 0x18e5
mov dword [esp + 0xc], 0x325d
mov ecx, dword [0x40ff58]
mov edx, dword [0x40ff54]
mov eax, dword [esp + 0xc]
or ecx, 0x4cf6
sub ecx, edx
mov edx, dword [esp + 0x10]
mov edi, dword [0x40ff4c]
xor eax, edx
xor edx, edx
div edi
mov edi, dword [0x40ff24]
mov eax, dword [0x40ff1c]
and eax, 0x1614
mov dword [esp + 0xc], eax
mov eax, dword [0x40ff5c]
add eax, 0x17e7
and eax, 0x20b8
add eax, 0x1e9f834
push eax
mov eax, dword [0x40ff50]
and eax, ecx
mov ecx, 0xadce5175
sub ecx, eax
mov eax, dword [0x40ff48]
push ecx
mov ecx, dword [0x40ff44]
shr edi, 0xa
lea eax, [eax + edx + 0x11cf8bb7]
push eax
mov eax, dword [0x40ff40]
xor edx, edx
div ecx
xor edx, edx
xor eax, 0x6c22f77b
push eax
mov eax, dword [esp + 0x40]
mov eax, dword [eax*4 + 0x40ff34]
mov ecx, dword [0x40ff30]
or ecx, 0x5908
sub ecx, eax
mov eax, dword [esp + 0x3c]
imul eax, eax, 0x7256
add eax, dword [esp + 0x38]
add ecx, 0x64b2
xor ecx, 0xc2212922
push ecx
mov cl, byte [0x40ff20]
or eax, 0x43a8
xor eax, 0xf1fb32d3
push eax
mov eax, dword [esp + 0x24]
shl edi, cl
mov ecx, dword [0x40ff18]
div ecx
mov ecx, 0x77f8
xor edi, 0x70714ed5
push edi
mov eax, edx
xor edx, edx
div ecx
xor edx, 0x842c2ddf
push edx
call fcn.0040bf05
inc dword [esp + 0x14]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x1c]
xor eax, esi
add eax, ebx
cmp dword [esp + 0x14], eax
jb 0x40ab27
mov dword [esp + 0x10], 0x5a63
mov eax, dword [0x40ff74]
mov ecx, dword [0x40ff70]
add eax, 0x4ca7
xor ecx, eax
sub ecx, 0xfa2b
mov dword [esp + 0x14], ecx
mov eax, dword [0x40ff98]
mov cl, byte [0x40ff94]
shr eax, 1
shl eax, cl
mov ecx, dword [0x40ff90]
xor edx, edx
add ecx, eax
xor ecx, 0x21ddc
mov dword [esp + 0xc], ecx
mov dword [esp + 0x78], 0xe8
mov dword [esp + 0x7c], 0x1f4d
mov dword [esp + 0x80], 0x67e0
mov dword [esp + 0x84], 0x6454
mov edi, dword [0x40ff6c]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + eax*4 + 0x78]
mov eax, dword [0x40ff9c]
add eax, 0x5c7c
div ecx
mov eax, 0x368257a7
and edi, 0xfffff
shl edi, 7
sub eax, edx
push eax
mov eax, dword [esp + 0x18]
mov ecx, dword [eax*4 + 0x40ff7c]
mov eax, dword [0x40ff78]
sub eax, 0x2cfc
xor edx, edx
div ecx
mov cl, byte [0x40ff68]
mov eax, dword [esp + 0x14]
imul eax, eax, 0xfb000000
shl edi, cl
mov ecx, 0x2971
add edi, 0x142af1ed
xor edx, 0x1d442a0a
push edx
xor edx, edx
div ecx
push edi
mov eax, 0xcb84055f
mov ecx, 0x13584
sub eax, edx
push eax
mov eax, dword [0x40ff64]
imul eax, eax, 0x4d71
add eax, 0x2f95
xor edx, edx
div ecx
xor eax, 0xf6c8ed34
push eax
mov eax, dword [0x40ff60]
and eax, 0x1a39
xor eax, 0x6bd3
sub eax, 0x2bef1c8d
push eax
call fcn.0040b9b0
mov dword [esp + 0x34], eax
mov al, byte [0x40ffa3]
mov cl, byte [0x40ffa2]
imul cl
movzx ecx, al
mov al, byte [0x40ffa1]
movzx eax, al
or eax, ecx
movzx ecx, byte [0x40ffa0]
and ecx, eax
mov byte [esp + 0x18], cl
mov eax, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
push dword [ebp + 0x10]
call fcn.004094b1
mov dword [esp + 0x34], eax
cmp dh, 0x21
mov eax, dword [esp + 0x1c]
and dword [esp + 0x14], 0
xor eax, esi
add eax, ebx
je 0x40b6e4
mov eax, dword [esp + 0x14]
add eax, 0xfff548df
xor eax, esi
add eax, dword [esp + 0x20]
mov ecx, 0x7db8
mov dword [esp + 0x20], eax
mov dword [esp + 0xc], 0x6140
mov eax, dword [esp + 0xc]
or eax, 0x3fbf
xor eax, 0x7ffb
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov ax, word [eax*2 + 0x40ffa8]
imul ax, cx
mov cx, word [0x40ffa4]
movzx eax, ax
cdq
movzx ecx, cx
idiv ecx
mov word [esp + 0x2c], dx
mov dword [esp + 0x30], 0x31ca
mov dword [esp + 0x10], 0x5997
mov dword [esp + 0xc], 0x7d73
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
xor eax, ecx
mov ecx, dword [0x40ffb4]
imul eax, ecx
mov ecx, dword [esp + 0x30]
imul ecx, eax
mov eax, 0x1a8ba150
sub eax, ecx
mov dword [esp + 0xc], eax
mov eax, 0x49c4
mov word [esp + 0x18], ax
mov eax, 0x593
mov word [esp + 0x28], ax
mov eax, dword [esp + 0xc]
mov cl, byte [eax*2 + 0x40ffb8]
mov ax, word [esp + 0x28]
mov dx, word [esp + 0x18]
add ax, dx
shr ax, cl
mov cx, word [esp + 0x2c]
cmp cx, ax
ja 0x40b2c0
insb byte es:[edi], dx
sub al, 0x3b
sbb cl, byte [edi + 0x58]
jns 0x40b272
ret
add byte [ecx], bh
push esi
ja 0x40b272
jae 0x40b2aa
xor dword [edi], ebp
xor al, 0x51
cmp dword [esi + 0x56], ecx
dec esi
push eax
imul edi, dword [edx], 0x64
outsd dx, dword [esi]
pop eax
cmp byte [ebp + ebp*2 + 0x61], dl
bound esp, qword [ebp + 0x71]
outsd dx, dword [esi]
pop ebx
push edx
inc edx
dec esi
imul ebp, dword [edi], 0x3a
imul esi, dword [ecx], 0x42
outsd dx, dword [esi]
outsd dx, dword [esi]
outsb dx, byte [esi]
dec ecx
imul ebx, dword [ecx + 0x5b], 0x4b
jns 0x40b317
push ebp
pop ecx
inc edi
arpl word [edx + 0x53], bx
dec eax
xor bl, byte [eax + 0x48]
inc ebx
dec edx
push ebx
xor al, 0x4a
push edi
push ebx
pop eax
inc esi
dec ebx
xor dword [0x62525870], esi
push 0x58a167
inc edx
add byte [ecx - 0x5eefdbbc], cl
invalid
mov eax, dword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
mov dword [esp + 0x10], eax
mov eax, dword [0x40ffc4]
mov ecx, dword [0x40ffc0]
imul eax, eax, 0x2630
xor edx, edx
div ecx
mov ecx, dword [esp + 0x10]
shr eax, 6
lea eax, [ecx + eax - 0x1ca]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
call eax
mov dword [esp + 0xc], 0x553f
mov eax, dword [0x40ffc8]
mov ecx, dword [esp + 0xc]
and eax, 0x2143
add eax, 0xffff8a7f
add ecx, eax
mov dword [esp + 0x10], ecx
mov ecx, dword [0x40ffd0]
mov eax, 0xffffbf65
sub eax, ecx
mov ecx, dword [0x40ffcc]
add ecx, eax
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0xc]
mov ax, word [eax*2 + 0x40ffd8]
movzx ecx, ax
mov ax, word [0x40ffd4]
movzx edi, ax
mov eax, 0xc2e
cdq
idiv edi
shl dx, cl
mov ecx, dword [esp + 0x10]
movzx ecx, word [ecx*2 + 0x40ffe4]
movzx eax, dx
xor ecx, eax
mov word [esp + 0x2c], cx
mov ax, word [0x40fff4]
mov cx, word [0x40fff0]
shr ax, 2
and cx, ax
mov ax, word [esp + 0x2c]
cmp ax, cx
ja 0x40b403
jle 0x40b311
js 0x40b324
popal
sahf
xor dword [edx - 0x61], 0xffffffce
lea esi, [eax - 0x1d]
sal dword [edi + 0x8ca], 1
pushal
add byte [eax], al
add byte [esi - 0x31], ch
lds esi, [edi + 0x4837716a]
jp 0x40b41b
ja 0x40b405
jne 0x40b427
dec edi
dec ebx
dec esi
inc ebx
xor ebp, dword [ecx + 0x2c]
arpl word [edi + eax*2 + 0x65], si
push ecx
xor bh, byte [eax + 0x31]
push ecx
push esp
pop eax
insd dword es:[edi], dx
push 0x58714b75
inc ebx
xor byte [edx], dh
dec ecx
xor dword [ebx + 0x35], esp
dec ebp
outsb dx, byte [esi]
inc esi
cmp byte [ebx], dh
jb 0x40b421
inc edx
pop eax
insd dword es:[di], dx
das
dec ebp
ja 0x40b444
push esi
jbe 0x40b447
popal
imul edi, dword fs:[ecx + 0x6f], 0x56
push eax
pop edx
push 0x54347171
push edx
imul ecx, dword [esi + 0x62], 0x772b2c2b
cmp dword [ebx + 0x70], edi
pop ecx
cmp dh, byte [bx + si + 0x77]
push eax
cmp byte [ebx + 0x331c2444], cl
mov byte [ebx], 0xc3
mov eax, dword [esp + 0x1c]
and al, 0x1c
xor eax, esi
add eax, ebx
shr eax, 1
xor edx, edx
cmp dword [esp + 0x14], eax
jbe 0x40b530
mov eax, dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
add byte [edx], al
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1c]
or al, 0x8b
inc esp
and al, 0x1c
xor eax, esi
add eax, ebx
mov byte [ebx], 0xc3
shr eax, 1
mov dword [esp + 0xc], eax
mov eax, 0x55c6
mov word [esp + 0x10], ax
mov eax, 0x72c9
mov word [esp + 0x30], ax
push 2
pop eax
mov word [esp + 0x2c], ax
mov ecx, dword [0x410000]
mov eax, 0x74ba
div ecx
mov eax, 0x718c
push 0x38
shl edx, 0x12
add edx, 0x2d180002
mov dword [esp + 0x1c], edx
mov word [esp + 0x2c], ax
mov eax, dword [esp + 0x1c]
mov ax, word [eax*2 + 0x410004]
mov cx, word [0x40fffc]
add ax, cx
movzx eax, ax
cdq
pop ecx
idiv ecx
lea edi, [ecx + 0x48]
or eax, 0x5bcb
xor eax, 0xd5bc
mov word [esp + 0x18], ax
jmp 0x40b4f0
mov eax, dword [0x410010]
mov ecx, dword [0x41000c]
and eax, 0x3c30
imul ecx, eax
mov dword [esp + 0x54], ecx
mov cl, byte [esp + 0x2c]
mov ax, word [esp + 0x30]
shl ax, cl
mov cl, byte [0x40fff8]
shl ax, cl
mov cx, word [esp + 0x10]
movzx ecx, cx
movzx eax, ax
and ecx, eax
mov eax, 0x1000
cdq
idiv ecx
movzx ecx, word [esp + 0x18]
sub ecx, eax
mov word [esp + 0x18], cx
mov ax, word [esp + 0x28]
mov ecx, 0xff56
and ax, cx
imul ax, di
mov ecx, 0xc47
add ax, cx
mov cx, word [esp + 0x18]
cmp cx, ax
jne 0x40b4a3
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
sub eax, 0x85432
imul eax, ecx
sub dword [esp + 0x20], eax
jmp 0x40b6be
mov dword [esp + 0xc], 0xb2e
mov ecx, dword [0x410030]
mov eax, dword [0x41002c]
div ecx
mov edi, dword [0x410020]
mov ecx, dword [0x410028]
and edi, 0x1d58
add edi, 0xc50696b0
lea eax, [edx + 0x4fb4]
xor edx, edx
div ecx
mov cl, byte [0x410024]
xor edx, edx
add eax, 0x12480efa
push eax
mov eax, 0x99c
shr eax, cl
mov ecx, 0x4faf3ddf
shl eax, 0x19
sub ecx, eax
mov eax, dword [esp + 0x10]
xor eax, 0x7911
add eax, 0x7128c75
push ecx
push eax
mov eax, dword [0x41001c]
add eax, edi
push eax
mov eax, dword [0x410018]
mov ecx, dword [0x410014]
and eax, ecx
mov ecx, 0x152b
div ecx
sub edx, 0x38f37561
push edx
call fcn.0040bcbb
mov byte [esp + 0x18], al
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
add eax, 0x855d2
imul eax, ecx
sub dword [esp + 0x20], eax
mov eax, 0x1675
mov word [esp + 0x28], ax
movzx eax, word [0x41003c]
mov ecx, 0xffe8
and ax, cx
shl ax, 9
mov ecx, 0x9b1a
mov edi, 0x45bc
mov edx, 0x1a3e
sub ecx, eax
mov word [esp + 0x18], cx
mov ax, word [esp + 0x28]
add ax, dx
and ax, di
mov ecx, 0x5a80
add ax, cx
mov cx, word [esp + 0x18]
cmp cx, ax
jae 0x40b6be
mov eax, dword [0x410048]
mov ecx, dword [0x410044]
and eax, 0x1fffffff
shl eax, 2
and ecx, eax
sub ecx, 0xa
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x10]
mov eax, dword [eax*4 + 0x41004c]
mov cl, byte [0x410040]
and eax, 0x34d8
shr eax, cl
mov ecx, 0x53eb
mov dword [esp + 0x54], eax
mov ax, word [0x410038]
add ax, cx
mov cx, word [0x410034]
or cx, ax
mov eax, 0x6104
add cx, ax
movzx eax, cx
movzx ecx, word [esp + 0x18]
add ecx, eax
mov word [esp + 0x18], cx
mov ax, word [esp + 0x28]
add ax, dx
and ax, di
mov ecx, 0x5a80
add ax, cx
mov cx, word [esp + 0x18]
cmp cx, ax
jb 0x40b615
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x20]
and eax, ecx
mov dword [esp + 0x20], eax
aad 0xa
mov eax, dword [esp + 0x1c]
inc dword [esp + 0x14]
xor eax, esi
add eax, ebx
cmp dword [esp + 0x14], eax
jb 0x40b18e
test byte [0x410b98], 0x10
jne 0x40b6fe
mov eax, dword [sym.imp.USER32.dll_GetCapture]
or dword [0x410b98], 0x10
mov dword [0x41072c], eax
mov edx, 0xfdb4d709
mov eax, dword [sym.imp.USER32.dll_GetWindowTextLengthW]
mov dword [esp + 0x14], eax
mov eax, dword [0x410060]
xor eax, 0x4f43
imul eax, eax, 0x255d
shr eax, 0xb
mov ecx, 0xfaf6
sub ecx, eax
mov eax, dword [0x410068]
add dword [esp + 0x14], ecx
xor edx, edx
mov ecx, 0x743
div ecx
sub edx, 0x350
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xc]
mov ecx, dword [eax*4 + 0x41006c]
xor edx, edx
mov eax, 0x6c99
div ecx
mov cl, byte [0x410064]
shl eax, cl
shr eax, 0xc
sub eax, 0x2ab4f1ac
mov dword [esp + 0x24], eax
push dword [esp + 0x24]
mov eax, dword [esp + 0x18]
call eax
mov eax, dword [esp + 0x34]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc