Function at 0x414334
Capabilities:
Allocate thread local storage
Enumerate files on windows
Get file size
Set thread local storage value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x244
mov dword [ebp - 0x1c], 0x86
mov dword [ebp - 0x30], 0x9b
mov dword [ebp - 4], 0xa0
mov dword [ebp - 0x10], 0xc7
mov dword [ebp - 8], 0x79
mov dword [ebp - 0x18], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x14], 0x80
mov eax, dword [str.AJ]
or eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x1c]
add ecx, dword [0x4217e8]
cmp eax, ecx
je 0x41439a
mov dword [ebp - 0x74], 1
jmp 0x4143a1
mov dword [ebp - 0x74], 0
cmp dword [ebp - 0x74], 0
je 0x4143e0
mov edx, dword [0x421804]
imul edx, dword [0x421800]
mov eax, dword [ebp - 0x20]
sub eax, dword [0x4217e0]
cmp edx, eax
je 0x4143ca
mov dword [ebp - 0x78], 1
jmp 0x4143d1
mov dword [ebp - 0x78], 0
cmp dword [ebp - 0x78], 0
je 0x4143e0
mov dword [ebp - 0x7c], 1
jmp 0x4143e7
mov dword [ebp - 0x7c], 0
cmp dword [ebp - 0x7c], 0
je 0x414425
mov ecx, dword [0x42181c]
imul ecx, dword [ebp - 4]
test ecx, ecx
je 0x41440c
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0xc]
je 0x41440c
mov dword [ebp - 0x80], 1
jmp 0x414413
mov dword [ebp - 0x80], 0
cmp dword [ebp - 0x80], 0
je 0x414425
mov dword [ebp - 0x84], 1
jmp 0x41442f
mov dword [ebp - 0x84], 0
cmp dword [ebp - 0x84], 0
je 0x414479
mov eax, dword [ebp - 0xc]
sub eax, dword [0x421814]
je 0x41445a
mov ecx, dword [0x421808]
and ecx, dword [ebp - 8]
je 0x41445a
mov dword [ebp - 0x88], 1
jmp 0x414464
mov dword [ebp - 0x88], 0
cmp dword [ebp - 0x88], 0
je 0x414479
mov dword [ebp - 0x8c], 1
jmp 0x414483
mov dword [ebp - 0x8c], 0
cmp dword [ebp - 0x8c], 0
je 0x4144f9
mov edx, dword [ebp - 0x18]
xor edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x2c]
cmp edx, eax
jbe 0x4144a8
mov dword [ebp - 0x90], 1
jmp 0x4144b2
mov dword [ebp - 0x90], 0
cmp dword [ebp - 0x90], 0
je 0x4144f9
mov dword [ebp - 0x138], 0x62
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x4217e0], eax
mov ecx, dword [ebp - 0x138]
or ecx, dword [0x421804]
mov dword [0x42181c], ecx
mov edx, dword [0x421820]
add edx, dword [0x421808]
mov dword [0x4217f0], edx
jmp 0x4147af
mov dword [ebp - 0x44], 6
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x13c], 0x9b
mov dword [ebp - 0x144], 0
mov eax, dword [ebp - 0x13c]
xor eax, dword [ebp - 0x38]
mov dword [ebp - 0x24], eax
push 0
push 0xffffffffffffffff
push str.hnztlh
push 0xffffffffffffffff
push str.vgicrgodamr
push 0
push 0x800
call dword [sym.imp.KERNEL32.dll_CompareStringA]
mov dword [ebp - 0x38], eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
movzx edx, word [ecx]
mov dword [ebp - 0x24], edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x140], eax
push str.OxhHYwdRI.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0x44], eax
push str.HyWDxXtwS
mov eax, dword [ebp - 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x140]
movzx edx, word [ecx]
mov dword [ebp - 0x98], edx
mov eax, dword [0x421814]
or eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xc]
and ecx, dword [ebp - 0x30]
cmp eax, ecx
jae 0x4145ca
mov dword [ebp - 0x94], 1
jmp 0x4145d4
mov dword [ebp - 0x94], 0
cmp dword [ebp - 0x94], 0
jne 0x414622
mov edx, dword [0x4217e0]
and edx, dword [ebp - 4]
mov eax, dword [ebp - 0x98]
imul eax, dword [0x42181c]
cmp edx, eax
jbe 0x414603
mov dword [ebp - 0x9c], 1
jmp 0x41460d
mov dword [ebp - 0x9c], 0
cmp dword [ebp - 0x9c], 0
jne 0x414622
mov dword [ebp - 0xa0], 0
jmp 0x41462c
mov dword [ebp - 0xa0], 1
cmp dword [ebp - 0xa0], 0
jne 0x41466f
mov eax, dword [ebp - 0x24]
xor edx, edx
div dword [ebp - 0x24]
test eax, eax
jne 0x414658
mov ecx, dword [ebp - 0x144]
or ecx, dword [ebp - 0x24]
jne 0x414658
mov dword [ebp - 0xa4], 0
jmp 0x414662
mov dword [ebp - 0xa4], 1
cmp dword [ebp - 0xa4], 0
je 0x414768
mov dword [ebp - 0x19c], 0x32
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x14c], 0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0x148], 0x61
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0xb0], 0
mov edx, dword [ebp - 0xa8]
sub edx, dword [ebp - 0x148]
mov dword [ebp - 0xb0], edx
mov eax, dword [ebp - 0xac]
xor eax, dword [ebp - 0xa8]
mov dword [ebp - 0x14c], eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x10], eax
push 0
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x34], eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp + 8], eax
push 0
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
je 0x414727
mov dword [ebp - 0xac], 0xca5
cmp dword [ebp - 0x34], 0
je 0x414737
mov dword [ebp - 0xb0], 0xb37
mov eax, dword [0x421814]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.00413154
add esp, 8
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x64], eax
push 0
mov edx, dword [ebp - 0x64]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0xb4], eax
jmp 0x41477f
mov eax, dword [0x42181c]
and eax, dword [ebp - 0x1c]
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x34]
add ecx, dword [ebp - 0x44]
mov dword [0x4217f0], ecx
cmp dword [ebp - 0xb4], 0
je 0x41478f
mov dword [ebp - 0x24], 0x1f1a
push 0
push 0xffffffffffffffff
push str.nygfvww
push 0xffffffffffffffff
push str.ekjkc
push 0
push 0x800
call dword [sym.imp.KERNEL32.dll_CompareStringA]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x28], 0x32
jmp 0x4147c1
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0x61
jae 0x414b16
mov dword [ebp - 0x1a8], 0x8c
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov eax, dword [0x4217e8]
xor eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x4c]
sub ecx, dword [0x421824]
cmp eax, ecx
je 0x414829
mov dword [ebp - 0xb8], 1
jmp 0x414833
mov dword [ebp - 0xb8], 0
cmp dword [ebp - 0xb8], 0
je 0x414872
mov edx, dword [ebp - 0x40]
add edx, dword [ebp - 0x48]
je 0x41485b
mov eax, dword [ebp - 0x40]
add eax, dword [ebp - 0xe8]
je 0x41485b
mov dword [ebp - 0xbc], 1
jmp 0x414865
mov dword [ebp - 0xbc], 0
cmp dword [ebp - 0xbc], 0
jne 0x414a76
mov dword [ebp - 0x1ac], 0x93
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x3c], 0
mov ecx, dword [str.AJ]
sub ecx, dword [0x4217e4]
mov edx, dword [0x4217e0]
sub edx, dword [ebp - 0x1c]
cmp ecx, edx
jbe 0x4148b2
mov dword [ebp - 0xc0], 1
jmp 0x4148bc
mov dword [ebp - 0xc0], 0
cmp dword [ebp - 0xc0], 0
je 0x414903
mov eax, dword [ebp - 8]
or eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x2c]
add ecx, dword [0x4217e8]
cmp eax, ecx
jne 0x4148e4
mov dword [ebp - 0xc4], 1
jmp 0x4148ee
mov dword [ebp - 0xc4], 0
cmp dword [ebp - 0xc4], 0
je 0x414903
mov dword [ebp - 0xc8], 1
jmp 0x41490d
mov dword [ebp - 0xc8], 0
cmp dword [ebp - 0xc8], 0
je 0x414956
mov edx, dword [ebp - 0xc]
imul edx, dword [0x4217f8]
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x3c]
cmp edx, eax
je 0x414937
mov dword [ebp - 0xcc], 1
jmp 0x414941
mov dword [ebp - 0xcc], 0
cmp dword [ebp - 0xcc], 0
je 0x414956
mov dword [ebp - 0xd0], 1
jmp 0x414960
mov dword [ebp - 0xd0], 0
cmp dword [ebp - 0xd0], 0
je 0x4149aa
mov ecx, dword [ebp - 0x28]
sub ecx, dword [0x4217f0]
jne 0x41498b
mov edx, dword [0x4217fc]
xor edx, dword [ebp - 0x28]
jne 0x41498b
mov dword [ebp - 0xd4], 0
jmp 0x414995
mov dword [ebp - 0xd4], 1
cmp dword [ebp - 0xd4], 0
je 0x4149aa
mov dword [ebp - 0xd8], 1
jmp 0x4149b4
mov dword [ebp - 0xd8], 0
cmp dword [ebp - 0xd8], 0
je 0x414a0d
mov eax, dword [ebp - 0x3c]
imul eax, dword [ebp - 0x3c]
test eax, eax
jne 0x4149df
mov ecx, dword [ebp - 0x150]
add ecx, dword [ebp - 0x3c]
jne 0x4149df
mov dword [ebp - 0xdc], 0
jmp 0x4149e9
mov dword [ebp - 0xdc], 1
cmp dword [ebp - 0xdc], 0
je 0x414a0d
mov dword [ebp - 0x1b0], 0x29
mov edx, dword [0x4217f4]
and edx, dword [ebp - 0x28]
mov dword [0x4217f0], edx
jmp 0x414a71
mov dword [ebp - 0x1b4], 0x4c
mov dword [ebp - 0x1b8], 0xe3
mov dword [ebp - 0x1bc], 0xcb
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x154]
add eax, dword [ebp - 0x158]
mov dword [ebp - 0x15c], eax
jmp 0x414a76
jmp 0x414808
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0xe0], ecx
cmp dword [ebp - 0xe0], 0
je 0x414a93
cmp dword [ebp - 0xe0], 0x4c
je 0x414ac5
jmp 0x414ae9
mov dword [ebp - 0x1c8], 0x4a
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0x160], 0
mov edx, dword [ebp - 0x160]
sub edx, dword [ebp - 0xe4]
mov dword [ebp - 0xe4], edx
jmp 0x414af6
mov dword [ebp - 0x1cc], 0x96
mov dword [ebp - 0x1d0], 0xb2
mov eax, dword [ebp - 0x30]
add eax, dword [0x4217e4]
mov dword [0x421808], eax
jmp 0x414af6
mov ecx, dword [ebp - 0x48]
imul ecx, dword [ebp - 0x48]
mov dword [ebp - 0x1d4], ecx
mov edx, dword [ebp - 0x4c]
add edx, dword [ebp - 0x40]
mov dword [ebp - 0x164], edx
mov eax, dword [ebp - 0xe8]
xor eax, dword [ebp - 0x168]
mov dword [ebp - 0x40], eax
jmp 0x4147b8
mov ecx, dword [ebp - 8]
and ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 4]
xor edx, dword [0x4217e0]
mov eax, dword [0x421808]
or eax, dword [0x421814]
cmp edx, eax
jbe 0x414b43
mov dword [ebp - 0xec], 1
jmp 0x414b4d
mov dword [ebp - 0xec], 0
cmp dword [ebp - 0xec], 0
je 0x414b90
mov ecx, dword [ebp - 0x18]
imul ecx, dword [ebp - 8]
test ecx, ecx
jne 0x414b79
mov eax, dword [ebp - 8]
xor edx, edx
div dword [ebp - 0x14]
test eax, eax
jne 0x414b79
mov dword [ebp - 0xf0], 0
jmp 0x414b83
mov dword [ebp - 0xf0], 1
cmp dword [ebp - 0xf0], 0
jne 0x414eba
mov dword [ebp - 0x50], 0x2b
mov dword [ebp - 0x11c], 0x32
mov dword [ebp - 0x1d8], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x114], 0x97
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x110], 0xd7
mov edx, dword [ebp + 8]
or edx, dword [0x421824]
je 0x414bf7
mov eax, dword [str.AJ]
add eax, dword [0x42181c]
je 0x414bf7
mov dword [ebp - 0xf4], 1
jmp 0x414c01
mov dword [ebp - 0xf4], 0
cmp dword [ebp - 0xf4], 0
je 0x414c4b
mov ecx, dword [0x42180c]
xor ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x110]
cmp ecx, edx
jne 0x414c2c
mov dword [ebp - 0xf8], 1
jmp 0x414c36
mov dword [ebp - 0xf8], 0
cmp dword [ebp - 0xf8], 0
je 0x414c4b
mov dword [ebp - 0xfc], 1
jmp 0x414c55
mov dword [ebp - 0xfc], 0
cmp dword [ebp - 0xfc], 0
je 0x414ca0
mov eax, dword [ebp - 0x10]
imul eax, dword [0x4217fc]
mov ecx, dword [0x42180c]
xor ecx, dword [ebp - 0x50]
cmp eax, ecx
jbe 0x414c81
mov dword [ebp - 0x100], 1
jmp 0x414c8b
mov dword [ebp - 0x100], 0
cmp dword [ebp - 0x100], 0
je 0x414ca0
mov dword [ebp - 0x104], 1
jmp 0x414caa
mov dword [ebp - 0x104], 0
cmp dword [ebp - 0x104], 0
je 0x414cf4
mov edx, dword [ebp - 0x20]
and edx, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x20]
or eax, dword [ebp - 0x114]
cmp edx, eax
jae 0x414cd5
mov dword [ebp - 0x108], 1
jmp 0x414cdf
mov dword [ebp - 0x108], 0
cmp dword [ebp - 0x108], 0
je 0x414cf4
mov dword [ebp - 0x10c], 1
jmp 0x414cfe
mov dword [ebp - 0x10c], 0
cmp dword [ebp - 0x10c], 0
je 0x414d80
mov ecx, dword [ebp - 0x110]
imul ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x120]
and edx, dword [ebp - 0x114]
cmp ecx, edx
jae 0x414d30
mov dword [ebp - 0x118], 1
jmp 0x414d3a
mov dword [ebp - 0x118], 0
cmp dword [ebp - 0x118], 0
je 0x414d80
mov dword [ebp - 0x16c], 0x2d
mov dword [ebp - 0x1dc], 0x34
mov eax, dword [str.AJ]
imul eax, dword [ebp - 0x11c]
mov dword [0x4217e8], eax
mov ecx, dword [ebp - 0x16c]
push ecx
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov dword [ebp - 0x120], eax
jmp 0x414e2b
mov dword [ebp - 0x1e0], 0xa2
mov dword [ebp - 0x1e4], 0x58
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 4
mov dword [ebp - 0x170], 0
mov edx, dword [ebp - 0x124]
or edx, dword [ebp - 0x128]
mov dword [ebp - 0x124], edx
push str.FKFeBIsVSR.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x5c]
push eax
push str.TizhXAnxjhDae
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x5c]
push ecx
mov edx, dword [ebp - 0x1c]
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x414e08
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
jmp 0x414deb
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x128], ecx
push str.HyNeESXEZqx
mov edx, dword [ebp - 0x50]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x170], eax
jmp 0x414eba
mov eax, dword [0x42181c]
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x2f
je 0x414e47
cmp dword [ebp - 0x54], 0x3b
je 0x414e76
cmp dword [ebp - 0x54], 0x44
je 0x414e62
jmp 0x414e92
mov dword [ebp - 0x1e8], 0x3e
mov ecx, dword [0x4217f8]
add ecx, dword [ebp - 0x34]
mov dword [0x4217e0], ecx
jmp 0x414eb5
mov edx, dword [0x4217e4]
or edx, dword [ebp - 0x12c]
mov dword [0x42180c], edx
jmp 0x414eb5
mov dword [ebp - 0x1ec], 0xdc
mov eax, dword [0x421820]
or eax, dword [0x4217ec]
mov dword [0x421818], eax
jmp 0x414eb5
mov dword [ebp - 0x1f0], 0x41
mov dword [ebp - 0x1f4], 0xc2
mov ecx, dword [ebp - 0x10]
add ecx, dword [0x421808]
mov dword [0x42181c], ecx
jmp 0x414b1f
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x130], edx
cmp dword [ebp - 0x130], 0xea
ja case.0x414ee0.1
mov eax, dword [ebp - 0x130]
movzx ecx, byte [eax + 0x4152dc]
jmp dword [ecx*4 + 0x4152bc]
mov dword [ebp - 0x1f8], 0xfa
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x1fc], 0
mov dword [ebp - 0x200], 0
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x204], 0
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x58], 0
mov edx, dword [ebp - 0x58]
sub edx, dword [ebp - 0x58]
mov dword [ebp - 0x174], edx
mov eax, dword [ebp - 0x58]
imul eax, dword [ebp - 0x178]
mov dword [ebp - 0x17c], eax
jmp 0x41508c
mov dword [ebp - 0x208], 0xc7
mov dword [ebp - 0x180], 0x36
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x180]
and ecx, dword [0x421824]
mov dword [0x4217e0], ecx
jmp 0x41508c
mov edx, dword [0x421824]
push edx
mov eax, dword [str.AJ]
push eax
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
mov dword [ebp - 8], eax
jmp 0x41508c
mov dword [ebp - 0x20c], 0x1f
mov ecx, dword [0x421818]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
mov dword [str.AJ], edx
jmp 0x41508c
mov dword [ebp - 0x184], 0x23
mov eax, dword [ebp - 0x5c]
push eax
mov ecx, dword [0x4217e8]
push ecx
mov edx, dword [0x4217f8]
push edx
call dword [sym.imp.GDI32.dll_PolylineTo]
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_TlsFree]
mov dword [ebp - 0x10], eax
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x4217e8], eax
jmp 0x41508c
mov dword [ebp - 0x210], 0x54
mov dword [ebp - 0x214], 0x57
mov ecx, dword [str.AJ]
push ecx
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov dword [ebp - 0xc], eax
jmp 0x41508c
mov edx, dword [0x421808]
push edx
call dword [sym.imp.GDI32.dll_CreateBrushIndirect]
mov dword [0x4217fc], eax
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 0x30]
mov dword [0x42181c], eax
jmp 0x41508c
mov dword [ebp - 0x218], 0x2c
mov ecx, dword [ebp - 0x20]
push ecx
mov edx, dword [ebp - 0x64]
push edx
call dword [sym.imp.ole32.dll_CoTreatAsClass]
mov dword [0x4217f8], eax
mov eax, dword [ebp - 0x1c]
xor edx, edx
div dword [0x42181c]
mov dword [0x421824], eax
mov eax, dword [ebp - 0x14]
add eax, dword [0x42181c]
mov dword [0x4217fc], eax
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x134], ecx
cmp dword [ebp - 0x134], 0xfc
ja case.0x4150b2.1
mov edx, dword [ebp - 0x134]
movzx eax, byte [edx + 0x4153e0]
jmp dword [eax*4 + 0x4153c8]
mov dword [ebp - 0x21c], 0xad
mov ecx, dword [0x4217fc]
mov dword [0x42180c], ecx
mov edx, dword [0x42180c]
mov dword [0x4217e4], edx
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileType]
mov dword [0x421814], eax
jmp 0x4151d6
mov dword [ebp - 0x220], 0xd5
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x18c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x188], 0
mov ecx, dword [ebp - 0x188]
imul ecx, dword [ebp - 0x60]
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x18c]
sub edx, dword [ebp - 0x60]
mov dword [ebp - 0x190], edx
jmp 0x4151d6
mov dword [ebp - 0x22c], 0xaf
mov eax, dword [ebp - 0x230]
push eax
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegOverridePredefKey]
mov dword [0x4217ec], eax
jmp 0x4151d6
mov dword [ebp - 0x234], 0xa7
mov edx, dword [ebp - 0x194]
push edx
mov eax, dword [0x4217f0]
push eax
call dword [sym.imp.OLEAUT32.dll_SafeArrayAllocDescriptor]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x194]
or ecx, dword [0x421820]
mov dword [0x42180c], ecx
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileType]
mov dword [ebp - 0x34], eax
jmp 0x4151d6
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
mov dword [ebp + 8], eax
jmp 0x4151d6
mov edx, dword [ebp - 0x64]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileType]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0x80
je 0x415239
cmp dword [ebp - 0x68], 0xd4
je 0x4151fc
cmp dword [ebp - 0x68], 0xec
je 0x41526f
jmp 0x415294
mov dword [ebp - 0x198], 0x5a
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [0x4217f8]
push edx
call dword [sym.imp.ole32.dll_CoTreatAsClass]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x42181c]
mov dword [0x4217ec], eax
mov ecx, dword [0x421820]
add ecx, dword [ebp - 0x34]
mov dword [ebp - 0x198], ecx
jmp 0x4152b1
mov dword [ebp - 0x238], 0x55
mov dword [ebp - 0x23c], 0x59
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x70], 0x1a
mov edx, dword [ebp - 0x6c]
and edx, dword [ebp - 0x6c]
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x70]
and eax, dword [ebp - 0x6c]
mov dword [ebp - 0x70], eax
jmp 0x4152b1
mov dword [ebp - 0x240], 0x60
mov dword [ebp - 0x244], 0x9a
mov ecx, dword [0x4217ec]
xor ecx, dword [ebp - 0x20]
mov dword [0x421820], ecx
jmp 0x4152b1
mov edx, dword [0x4217f8]
push edx
call dword [sym.imp.KERNEL32.dll_TlsFree]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 0x18]
mov esp, ebp
pop ebp
ret