Function at 0x100d787
Capabilities:
Get geographical location
Get memory capacity
Get system information on windows
Identify system language via api

Disassembly:
push 0x378
mov eax, 0x10320fc
call fcn.01011faf
mov dword [ebp - 0x2fc], ecx
xor ebx, ebx
push 0x118
lea eax, [ebp - 0x1a8]
push ebx
push eax
mov dword [ebp - 0x1ac], ebx
call sub.msvcrt.dll_memset
push 0x3c
lea eax, [ebp - 0x35c]
push ebx
push eax
mov dword [ebp - 0x360], ebx
call sub.msvcrt.dll_memset
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0x380]
push 0x7e
mov dword [ebp - 0x384], ebx
rep stosd dword es:[edi], eax
mov word [ebp - 0x90], ax
lea eax, [ebp - 0x8e]
push ebx
push eax
mov dword [ebp - 0x2ec], ebx
call sub.msvcrt.dll_memset
xor eax, eax
push 0xfe
mov word [ebp - 0x2d0], ax
lea eax, [ebp - 0x2ce]
push ebx
push eax
mov dword [ebp - 0x2d4], ebx
mov dword [ebp - 0x2dc], ebx
mov dword [ebp - 0x2e0], ebx
mov dword [ebp - 0x2e4], ebx
call sub.msvcrt.dll_memset
add esp, 0x30
push 9
pop ecx
xor eax, eax
lea edi, [ebp - 0x1d0]
rep stosd dword es:[edi], eax
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x2e8], ebx
mov dword [ebp - 0x2f8], ebx
mov dword [ebp - 0x2f0], ebx
mov dword [ebp - 0x2f4], ebx
mov dword [ebp - 0x2d8], ebx
mov dword [ebp - 0x320], 0x1729
mov dword [ebp - 0x31c], 0x172a
mov dword [ebp - 0x318], 0x172b
mov dword [ebp - 0x314], 0x172c
call fcn.0101cfc9
push ebx
lea eax, [ebp - 0x2d8]
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
push 0x1002cd8
push 0x80000002
mov dword [ebp - 4], ebx
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
cmp eax, ebx
jne 0x100e984
cmp dword [ebp - 0x2d8], ebx
je 0x100e990
xor esi, esi
lea eax, [esi + 1]
push eax
push 0x1003144
mov dword [ebp - 0x304], eax
lea eax, [ebp - 0x310]
push 0x1003138
push eax
call fcn.01020dbf
mov edi, eax
add esp, 0x10
cmp edi, ebx
jl 0x100d9b6
lea eax, [ebp - 0x2d4]
push eax
lea ecx, [ebp - 0x310]
call fcn.0101cfe8
push eax
push 0x10030d8
push 0x80000002
call fcn.01012bef
cmp eax, ebx
jne 0x100d942
push 4
lea eax, [ebp - 0x2d4]
push eax
push 4
push dword [ebp + esi*4 - 0x320]
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jl 0x100d9e7
mov esi, dword [ebp - 0x304]
cmp esi, 4
jb 0x100d8c8
lea eax, [ebp - 0x1ac]
push eax
mov dword [ebp - 0x1ac], 0x11c
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
mov esi, 0x1002b5c
test eax, eax
je 0x100dbae
push 4
lea eax, [ebp - 0x1a8]
push eax
push 4
push 0x12
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100da0e
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x74
jmp 0x100e9ac
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push 0x1002b5c
push 0x72
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01004e8e
jmp 0x100e9b7
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push 0x1002b5c
push 0x73
jmp 0x100e9ac
push 4
lea eax, [ebp - 0x1a4]
push eax
push 4
push 0x13
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100da53
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push 0x1002b5c
push 0x75
jmp 0x100e9ac
push 4
lea eax, [ebp - 0x1a0]
push eax
push 4
push 0x14
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100da98
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push 0x1002b5c
push 0x76
jmp 0x100e9ac
movzx eax, word [ebp - 0x98]
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x15
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100daea
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push 0x1002b5c
push 0x77
jmp 0x100e9ac
movzx eax, word [ebp - 0x96]
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x16
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100db3c
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push 0x1002b5c
push 0x78
jmp 0x100e9ac
lea eax, [ebp - 0x2f8]
push eax
movzx eax, word [ebp - 0x96]
push eax
movzx eax, word [ebp - 0x98]
push eax
push dword [ebp - 0x1a4]
push dword [ebp - 0x1a8]
call dword [sym.imp.KERNEL32.dll_GetProductInfo]
test eax, eax
je 0x100dbda
push 4
lea eax, [ebp - 0x2f8]
push eax
push 4
push 0x17
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100dbda
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push 0x1002b5c
push 0x79
jmp 0x100e9ac
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100dbda
test byte [eax + 0x1c], 2
je 0x100dbda
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [0x1035014]
push esi
push 0x7a
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01004eb4
lea eax, [ebp - 0x2d4]
push eax
push 0x10030b4
push 0x1003060
push 0x80000002
call fcn.01012bef
cmp eax, ebx
jne 0x100dc3d
push 4
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x9e2
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100dc60
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x7b
jmp 0x100e9ac
mov ecx, dword [0x1035014]
cmp ecx, 0x1035014
je 0x100dc60
test byte [ecx + 0x1c], 1
je 0x100dc60
push eax
push esi
push 0x7c
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.01004eb4
push 0xffff
call dword [sym.imp.KERNEL32.dll_GetActiveProcessorCount]
push 4
mov dword [ebp - 0x2f4], eax
lea eax, [ebp - 0x2f4]
push eax
push 4
push 0x1f
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100dcb2
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x7d
jmp 0x100e9ac
lea eax, [ebp - 0x384]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
movzx eax, word [ebp - 0x384]
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x129
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100dd10
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x7e
jmp 0x100e9ac
movzx eax, word [ebp - 0x362]
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x125
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100dd61
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x7f
jmp 0x100e9ac
lea eax, [ebp - 0x2d4]
push eax
push 0x1003050
push 0x1002ff0
push 0x80000002
call fcn.01012bef
cmp eax, ebx
jne 0x100ddc4
push 4
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x71
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100ddea
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x80
jmp 0x100e9ac
mov ecx, dword [0x1035014]
cmp ecx, 0x1035014
je 0x100ddea
test byte [ecx + 0x1c], 1
je 0x100ddea
push eax
push esi
push 0x81
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.01004eb4
push 0x40
lea eax, [ebp - 0x90]
push eax
push 0x1002fc4
push 0x1002ff0
push 0x80000002
call fcn.01012aaa
cmp eax, ebx
jne 0x100dea0
lea eax, [ebp - 0x2dc]
push eax
push 0x40
lea eax, [ebp - 0x90]
push eax
call fcn.01006a94
mov edi, eax
cmp edi, ebx
jge 0x100de50
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x82
jmp 0x100e9ac
mov eax, dword [ebp - 0x2dc]
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x90]
push eax
push 1
push 0x877
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100dea0
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x83
jmp 0x100e9ac
mov ecx, dword [ebp - 0x2fc]
lea eax, [ebp - 0x2f0]
push eax
call fcn.0100c381
test eax, eax
jl 0x100defd
push 4
lea eax, [ebp - 0x2f0]
push eax
push 4
push 0xb88
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100defd
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x84
jmp 0x100e9ac
lea eax, [ebp - 0x360]
push eax
mov dword [ebp - 0x360], 0x40
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x100e010
mov edi, dword [ebp - 0x358]
xor ecx, ecx
inc ecx
xor eax, eax
xor edx, edx
cmp eax, dword [ebp - 0x354]
ja 0x100df55
jb 0x100df37
cmp ecx, edi
jae 0x100df55
shld eax, ecx, 1
add ecx, ecx
inc edx
cmp edx, 0x40
jb 0x100df29
cmp eax, dword [ebp - 0x354]
ja 0x100df55
jb 0x100df51
cmp ecx, edi
jae 0x100df55
mov ecx, edi
jmp 0x100dfb9
mov edx, ecx
sub edx, edi
mov dword [ebp - 0x300], edx
mov edx, eax
sbb edx, dword [ebp - 0x354]
mov dword [ebp - 0x2fc], edx
jne 0x100df7b
cmp dword [ebp - 0x300], 0x1000000
jbe 0x100dfbf
shrd ecx, eax, 1
shr eax, 1
cmp eax, dword [ebp - 0x354]
ja 0x100dfbf
jb 0x100df93
cmp ecx, dword [ebp - 0x358]
jae 0x100dfbf
mov edx, dword [ebp - 0x358]
mov edi, dword [ebp - 0x354]
sub edx, ecx
sbb edi, eax
mov dword [ebp - 0x2fc], edi
jne 0x100dfb3
cmp edx, 0x1000000
jbe 0x100dfbf
mov ecx, dword [ebp - 0x358]
mov eax, dword [ebp - 0x354]
shrd ecx, eax, 0x14
push 4
shr eax, 0x14
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x23
push dword [ebp - 0x2d8]
mov dword [ebp - 0x2d4], ecx
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e03f
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x85
jmp 0x100e9ac
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e03f
test byte [eax + 0x1c], 2
je 0x100e03f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [0x1035014]
push esi
push 0x86
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01004eb4
push 0x1c
call dword [sym.imp.SHLWAPI.dll_IsOS]
neg eax
sbb eax, eax
neg eax
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x260
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e09a
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x87
jmp 0x100e9ac
push 0x5e
call dword [sym.imp.USER32.dll_GetSystemMetrics]
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x16f2
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e0ef
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x88
jmp 0x100e9ac
call sub.POWRPROF.dll_PowerDeterminePlatformRole
dec eax
dec eax
neg eax
sbb eax, eax
inc eax
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x25f
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e148
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x89
jmp 0x100e9ac
push 0x1002fb0
call fcn.01015687
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x3ed
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e19f
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x8a
jmp 0x100e9ac
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
movzx eax, ax
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x3ee
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e1f5
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x8b
jmp 0x100e9ac
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLCID]
push 4
mov dword [ebp - 0x2ec], eax
lea eax, [ebp - 0x2ec]
push eax
push 4
push 0xc0
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e248
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x8c
jmp 0x100e9ac
push 0x10
call dword [sym.imp.KERNEL32.dll_GetUserGeoID]
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x25
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e29a
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x8d
jmp 0x100e9ac
lea eax, [ebp - 0x2d4]
push eax
call fcn.01031ef8
cmp eax, ebx
jne 0x100e2f1
push 4
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x4b5
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e317
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x8e
jmp 0x100e9ac
mov ecx, dword [0x1035014]
cmp ecx, 0x1035014
je 0x100e317
test byte [ecx + 0x1c], 2
je 0x100e317
push eax
push esi
push 0x8f
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.01004eb4
lea eax, [ebp - 0x2d4]
push eax
push 0x1002f84
push 0x1002f10
push 0x80000002
call fcn.01012bef
cmp eax, ebx
jne 0x100e37d
push 4
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x5d3
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
cmp edi, ebx
jge 0x100e3a3
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x90
jmp 0x100e9ac
mov ecx, dword [0x1035014]
cmp ecx, 0x1035014
je 0x100e3a3
test byte [ecx + 0x1c], 2
je 0x100e3a3
push eax
push esi
push 0x91
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.01004eb4
push 0x40
lea eax, [ebp - 0x90]
push eax
push 0x1002ee8
mov ebx, 0x1002e80
push ebx
push 0x80000002
call fcn.01012aaa
test eax, eax
jne 0x100e45a
lea eax, [ebp - 0x2dc]
push eax
push 0x40
lea eax, [ebp - 0x90]
push eax
call fcn.01006a94
mov edi, eax
test edi, edi
jge 0x100e40a
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x92
jmp 0x100e9ac
mov eax, dword [ebp - 0x2dc]
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x90]
push eax
push 1
push 0x3f3
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e45a
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x93
jmp 0x100e9ac
push 0x40
lea eax, [ebp - 0x90]
push eax
push 0x1002e58
push ebx
push 0x80000002
call fcn.01012aaa
test eax, eax
jne 0x100e50c
lea eax, [ebp - 0x2dc]
push eax
push 0x40
lea eax, [ebp - 0x90]
push eax
call fcn.01006a94
mov edi, eax
test edi, edi
jge 0x100e4bc
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x94
jmp 0x100e9ac
mov eax, dword [ebp - 0x2dc]
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x90]
push eax
push 1
push 0x3f4
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e50c
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x95
jmp 0x100e9ac
push 0x40
lea eax, [ebp - 0x90]
push eax
push 0x1002e40
push ebx
push 0x80000002
call fcn.01012aaa
test eax, eax
jne 0x100e5be
lea eax, [ebp - 0x2dc]
push eax
push 0x40
lea eax, [ebp - 0x90]
push eax
call fcn.01006a94
mov edi, eax
test edi, edi
jge 0x100e56e
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x96
jmp 0x100e9ac
mov eax, dword [ebp - 0x2dc]
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x90]
push eax
push 1
push 0x3f5
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e5be
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x97
jmp 0x100e9ac
push 0x40
lea eax, [ebp - 0x90]
push eax
push 0x1002e20
push ebx
push 0x80000002
call fcn.01012aaa
test eax, eax
jne 0x100e670
lea eax, [ebp - 0x2dc]
push eax
push 0x40
lea eax, [ebp - 0x90]
push eax
call fcn.01006a94
mov edi, eax
test edi, edi
jge 0x100e620
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x98
jmp 0x100e9ac
mov eax, dword [ebp - 0x2dc]
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x90]
push eax
push 1
push 0x500
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e670
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x99
jmp 0x100e9ac
lea eax, [ebp - 0x2d4]
push eax
push 0x1002dfc
push ebx
push 0x80000002
call fcn.01012bef
test eax, eax
jne 0x100e6d2
push 4
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x3f6
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e6d2
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x9a
jmp 0x100e9ac
lea eax, [ebp - 0x2d4]
push eax
push 0x10025dc
push 0x1002da8
mov ebx, 0x80000002
push ebx
call fcn.01012bef
test eax, eax
jne 0x100e749
cmp dword [ebp - 0x2d4], 4
push 4
setne al
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x217
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e749
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x9b
jmp 0x100e9ac
lea eax, [ebp - 0x2d4]
push eax
push 0x1002d98
push 0x1002090
push ebx
call fcn.01012bef
test eax, eax
jne 0x100e7ab
push 4
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x262
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e7ab
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x9c
jmp 0x100e9ac
lea eax, [ebp - 0x2d4]
push eax
push 0x1002d7c
push 0x1002090
push ebx
call fcn.01012bef
test eax, eax
jne 0x100e80d
push 4
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x76a
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e80d
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x9d
jmp 0x100e9ac
push 0x1002d68
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x2e8], eax
test eax, eax
je 0x100e951
push 0x1002d54
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x100e980
lea ecx, [ebp - 0x2e0]
push ecx
push 0x1002d44
call eax
mov ecx, dword [ebp - 0x2e0]
test eax, eax
jl 0x100e929
test ecx, ecx
je 0x100e929
mov eax, dword [ecx]
lea edx, [ebp - 0x2e4]
push edx
push 0
push ecx
call dword [eax + 0x1c]
test eax, eax
jl 0x100e90c
mov eax, dword [ebp - 0x2e4]
mov ecx, dword [eax]
lea edx, [ebp - 0x2d0]
push edx
push eax
call dword [ecx + 0x20]
test eax, eax
jl 0x100e8eb
mov eax, dword [ebp - 0x1b8]
mov ecx, dword [ebp - 0x1bc]
add eax, ecx
shr eax, 0x14
push 4
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x2d4]
push eax
push 4
push 0x2a
push dword [ebp - 0x2d8]
call fcn.0100cb4e
mov edi, eax
test edi, edi
jge 0x100e980
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push esi
push 0x9e
jmp 0x100e9ac
mov ecx, dword [0x1035014]
cmp ecx, 0x1035014
je 0x100e980
test byte [ecx + 0x1c], 2
je 0x100e980
push eax
push esi
push 0x9f
jmp 0x100e944
mov ecx, dword [0x1035014]
cmp ecx, 0x1035014
je 0x100e980
test byte [ecx + 0x1c], 2
je 0x100e980
push eax
push esi
push 0xa0
jmp 0x100e944
mov ecx, dword [0x1035014]
cmp ecx, 0x1035014
je 0x100e980
test byte [ecx + 0x1c], 2
je 0x100e980
push eax
push esi
push 0xa1
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.01004eb4
jmp 0x100e980
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e980
test byte [eax + 0x1c], 1
je 0x100e980
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [0x1035014]
push esi
push 0xa2
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01004eb4
xor edi, edi
jmp 0x100e9b7
jle 0x100e990
and eax, 0xffff
or eax, 0x80070000
mov edi, eax
mov eax, dword [0x1035014]
cmp eax, 0x1035014
je 0x100e9b7
test byte [eax + 0x1c], 1
je 0x100e9b7
push edi
push 0x1002b5c
push 0x71
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01004eb4
mov eax, dword [ebp - 0x2e4]
xor esi, esi
cmp eax, esi
je 0x100e9cf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0x2e4], esi
mov eax, dword [ebp - 0x2e0]
cmp eax, esi
je 0x100e9e5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0x2e0], esi
cmp dword [ebp - 0x2e8], esi
je 0x100e9f9
push dword [ebp - 0x2e8]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [ebp - 0x2d8], esi
je 0x100ea13
push dword [ebp - 0x2d8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x2d8], esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x310]
call fcn.0101cfdb
mov eax, edi
call fcn.01012003
ret