Function at 0x1002a980
Capabilities:
Get thread local storage value
Resolve function by parsing pe exports

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x4ac
mov eax, dword [0x1010e2b0]
xor eax, esp
mov dword [esp + 0x4a8], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0x10]
mov ebx, ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x3c], eax
push edi
mov edi, dword [ebp + 0xc]
test esi, esi
je 0x1006a859
test edx, edx
je 0x1002a9ca
test ebx, ebx
je 0x1006a925
mov ecx, dword [ebp + 0x14]
mov byte [esp + 0x28], 0
test ecx, ecx
jne 0x1006a99d
cmp dword [0x1010fa10], ecx
jne 0x1002afea
mov eax, dword [0x1010e050]
mov dword [esp + 0x20], eax
mov eax, dword [0x1010e054]
mov dword [esp + 0x24], eax
xor eax, eax
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], eax
mov eax, edx
and eax, 2
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x48], eax
or eax, 0
jne 0x1002af57
test ebx, ebx
je 0x1002af57
mov byte [esp + 0x38], al
xor eax, eax
mov dword [esp + 0x64], 0
mov ecx, edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x14], ecx
xor ebx, ebx
mov dword [esp + 0x58], ecx
lea ecx, [esp + 0x20]
mov dword [esp + 0x60], ecx
mov ecx, dword [ebp + 0x18]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov byte [esp + 0x88], al
mov word [esp + 0x8a], ax
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], al
mov dword [esp + 0x498], eax
mov dword [esp + 0x49c], eax
lea eax, [esp + 0x2c]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x6c], ecx
xor ecx, ecx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x4a0], eax
mov dword [esp + 0x5c], edi
mov dword [esp + 0x68], esi
inc ecx
mov dword [esp + 0x4a8], ecx
cmp ecx, 2
je 0x1002acde
mov dword [esp + 0x90], 0
mov dword [esp + 0x74], 0
movzx edx, word [esi]
mov word [esp + 0x8a], dx
test dx, dx
je 0x1002abc2
jmp 0x1002aaf0
add esi, 2
mov dword [esp + 0x68], esi
test ebx, ebx
js 0x1002afb0
mov ecx, dword [esp + 0x8a]
add ecx, 0xffffffe0
mov dword [esp + 0x4c], 0x1000bd18
cmp cx, 0x5a
ja 0x1002ae9a
movzx ecx, dx
lfence
movzx edi, byte [ecx + 0x1000bcf8]
and edi, 0xf
mov ecx, dword [esp + 0x74]
movzx ecx, byte [ecx + edi*8 + 0x1000bd18]
shr ecx, 4
mov dword [esp + 0x74], ecx
cmp ecx, 8
je 0x1006ae76
test ecx, ecx
jne 0x1002abca
mov byte [esp + 0x94], 1
mov ecx, dword [eax + 8]
movzx edx, dx
cmp ecx, dword [eax + 4]
je 0x1002ad50
inc ebx
mov dword [esp + 0x70], ebx
inc dword [eax + 8]
mov eax, dword [esp + 0x4a0]
mov eax, dword [eax]
mov word [eax], dx
mov eax, dword [esp + 0x4a0]
add dword [eax], 2
mov esi, dword [esp + 0x68]
mov ecx, dword [esp + 0x78]
mov ebx, dword [esp + 0x70]
mov eax, dword [esp + 0x4a0]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x14], ecx
mov dx, word [esi]
mov word [esp + 0x8a], dx
test dx, dx
jne 0x1002aaf0
mov ecx, dword [esp + 0x4a8]
add esi, 2
jmp 0x1002aaac
cmp ecx, 7
ja case.default.0x1002abd3
jmp dword [ecx*4 + 0x1002b0a8]
xor ecx, ecx
mov dword [esp + 0x7c], 0
mov byte [esp + 0x88], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x84], ecx
mov byte [esp + 0x94], cl
jmp case.0x1002af3c.33
lea ecx, [esp + 0x58]
call fcn.1002b630
mov esi, dword [esp + 0x68]
test al, al
jne 0x1002ab84
jmp case.default.0x1002abd3
movzx ecx, dx
cmp ecx, 0x30
jne 0x1002af29
mov ecx, dword [esp + 0xc]
or ecx, 8
mov dword [esp + 0xc], ecx
mov dword [esp + 0x78], ecx
jmp case.0x1002af3c.33
cmp dx, 0x2a
je 0x1006ac2d
cmp dword [esp + 0x64], 0
je 0x1002add5
mov edi, dword [esp + 0x64]
lea edx, [esp + 0x3c]
sub esp, 8
mov dword [esp + 0x58], edi
mov eax, esp
mov ebx, dword [edi]
mov dword [edi], 0
mov ecx, dword [esp + 0x70]
add ecx, 0xfffffffe
mov dword [eax + 4], edx
mov dword [eax], ecx
mov edx, 0xa
mov dword [esp + 0x44], ecx
xor ecx, ecx
push 1
mov dword [esp + 0x60], ebx
call fcn.1002cb30
add esp, 0xc
mov dword [esp + 0x7c], eax
cmp dword [esp + 0x64], 0
je 0x1006ab26
mov eax, dword [esp + 0x64]
cmp dword [eax], 0x22
je 0x1006ac0d
mov esi, dword [esp + 0x3c]
cmp esi, dword [esp + 0x68]
jb 0x1006ac1d
mov dword [esp + 0x68], esi
cmp dword [edi], 0
jne 0x1002acd7
test ebx, ebx
jne 0x1002af61
mov al, 1
jmp 0x1002ac1c
mov ecx, dword [esp + 0x44]
test ecx, ecx
je 0x1002ad14
mov edx, dword [esp + 0x40]
and edx, 1
or edx, 0
mov edx, dword [esp + 0x18]
je 0x1002aee9
test edx, edx
je 0x1006af4e
mov eax, dword [esp + 0x34]
cmp eax, edx
je 0x1002adb0
xor edx, edx
mov word [ecx + eax*2], dx
push dword [esp + 0x49c]
call sym.ucrtbase.dll__free_base
add esp, 4
mov dword [esp + 0x49c], 0
cmp byte [esp + 0x28], 0
jne 0x1002b046
mov eax, ebx
mov ecx, dword [esp + 0x4b4]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1005cc20
mov esp, ebp
pop ebp
ret
cmp byte [eax + 0xc], 0
je 0x1002afde
inc ebx
mov dword [esp + 0x70], ebx
jmp case.0x1002af3c.33
cmp dx, 0x46
je 0x1006ac96
cmp dx, 0x4e
je 0x1006acb3
cmp dword [esp + 0x84], 0
jne 0x1006adee
movzx ecx, dx
cmp ecx, 0x77
je 0x1002adc5
cmp ecx, 0x6c
jne 0x1002aea1
cmp word [esi], cx
je 0x1002af6c
mov dword [esp + 0x84], 3
jmp case.0x1002af3c.33
test ebx, ebx
js 0x1002ad14
cmp ebx, edx
jbe 0x1002ad14
jmp 0x1006af5e
mov dword [esp + 0x84], 0xc
jmp case.0x1002af3c.33
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ebx, dword [0x1010e2c0]
mov esi, eax
cmp ebx, 0xffffffff
je 0x1006aa40
mov edi, dword [0x1010f3b4]
mov ecx, dword [0x1010e2b0]
xor edi, dword [0x1010e2b0]
and ecx, 0x1f
ror edi, cl
cmp edi, 0xffffffff
je 0x1006aa03
test edi, edi
je 0x1006a9d7
push ebx
mov ecx, edi
call dword [0x10110268]
call edi
mov edi, eax
test edi, edi
je 0x1006aa3a
cmp edi, 0xffffffff
je 0x1006aa79
test edi, edi
je 0x1006aa79
mov edx, dword [0x1010e2c4]
mov ebx, dword [0x1010f3b4]
mov dword [esp + 0x14], edx
mov ecx, dword [0x1010e2b0]
xor ebx, dword [0x1010e2b0]
and ecx, 0x1f
ror ebx, cl
cmp ebx, 0xffffffff
je 0x1006aaeb
test ebx, ebx
je 0x1006aabb
push edx
mov ecx, ebx
call dword [0x10110268]
call ebx
push esi
mov ebx, eax
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
imul eax, ebx, 0x364
add eax, edi
je 0x1006aa80
add eax, 0x10
mov dword [esp + 0x64], eax
jmp 0x1002ac5e
xor edi, edi
jmp 0x1002ab2b
add ecx, 0xffffffb7
cmp ecx, 0x31
ja case.0x1002af3c.33
movzx ecx, byte [ecx + 0x1002b0e8]
jmp dword [ecx*4 + 0x1002b0c8]
movzx ecx, word [esi]
cmp ecx, 0x33
je 0x1002afbc
cmp ecx, 0x36
je 0x1002af83
cmp ecx, 0x78
jne 0x1002b056
mov dword [esp + 0x84], 9
jmp case.0x1002af3c.33
mov eax, dword [esp + 0x48]
or eax, 0
jne 0x1006af66
test edx, edx
je 0x1006af8a
mov eax, dword [esp + 0x34]
cmp eax, edx
jne 0x1002ad0e
jmp 0x1006af92
cmp word [esi], 0x68
je 0x1006acff
mov dword [esp + 0x84], 2
jmp case.0x1002af3c.33
add ecx, 0xffffffe0
cmp ecx, 0xd
ja case.0x1002af3c.33
movzx ecx, byte [ecx + 0x1002b130]
jmp dword [ecx*4 + 0x1002b11c]
mov ecx, dword [esp + 0xc]
or ecx, 0x20
mov dword [esp + 0xc], ecx
mov dword [esp + 0x78], ecx
jmp case.0x1002af3c.33
mov byte [esp + 0x38], 1
jmp 0x1002aa2c
mov dword [edi], ebx
mov esi, dword [esp + 0x68]
jmp 0x1002acd7
add esi, 2
mov dword [esp + 0x84], 4
mov dword [esp + 0x68], esi
jmp case.0x1002af3c.33
cmp word [esi + 2], 0x34
jne 0x1002aed0
add esi, 4
mov dword [esp + 0x84], 0xb
mov dword [esp + 0x68], esi
jmp case.0x1002af3c.33
mov ecx, dword [esp + 0x4a8]
jmp 0x1002aab0
cmp word [esi + 2], 0x32
jne 0x1002aec7
add esi, 4
mov dword [esp + 0x84], 0xa
mov dword [esp + 0x68], esi
jmp case.0x1002af3c.33
or ebx, 0xffffffff
mov dword [esp + 0x70], ebx
jmp case.0x1002af3c.33
call fcn.1005de8f
mov dword [esp + 0x1c], eax
mov ecx, dword [eax + 0x4c]
mov dword [esp + 0x20], ecx
mov ecx, dword [eax + 0x48]
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x20]
push ecx
push eax
call fcn.100344a7
lea eax, [esp + 0x2c]
push eax
push dword [esp + 0x28]
call fcn.1003e467
mov ecx, dword [esp + 0x2c]
add esp, 0x10
mov edx, dword [esp + 0x18]
mov eax, dword [ecx + 0x350]
test al, 2
jne 0x1002a9f8
or eax, 2
mov dword [ecx + 0x350], eax
mov byte [esp + 0x28], 1
jmp 0x1002a9f8
mov ecx, dword [esp + 0x1c]
and dword [ecx + 0x350], 0xfffffffd
jmp 0x1002ad39
cmp ecx, 0x75
je 0x1002aed9
jmp 0x1006ad16
mov dword [esp + 0x80], 0
jmp case.0x1002af3c.33
cmp dx, 0x2a
je 0x1006ac65
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0x5c]
call fcn.1002b428
jmp 0x1002ac18
mov ecx, dword [esp + 0xc]
or ecx, 4
mov dword [esp + 0xc], ecx
mov dword [esp + 0x78], ecx
jmp case.0x1002af3c.33
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, dword [0x1010e2c0]
mov esi, eax
cmp ecx, 0xffffffff
je 0x1006a887
call fcn.10029fa0
mov edi, eax
test edi, edi
je 0x1006a881
cmp edi, 0xffffffff
jne 0x1006a8ce
jmp 0x1006a906
mov ecx, dword [0x1010e2c0]
or edx, 0xffffffff
call fcn.10032a89
test eax, eax
je 0x1006a906
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
mov ecx, dword [0x1010e2c0]
mov edi, eax
add esp, 8
test edi, edi
je 0x1006a8f5
mov edx, edi
call fcn.10032a89
test eax, eax
je 0x1006a98a
mov ecx, edi
call fcn.10031ad6
push 0
call sym.ucrtbase.dll__free_base
add esp, 4
test edi, edi
je 0x1006a906
mov ecx, dword [0x1010e2c4]
call fcn.10029fa0
imul eax, eax, 0x364
push esi
add edi, eax
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
test edi, edi
je 0x1006a90d
lea eax, [edi + 0x10]
jmp 0x1006a912
xor edx, edx
call fcn.10032a89
push 0
call sym.ucrtbase.dll__free_base
add esp, 4
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
mov eax, 0x1010eac0
mov dword [eax], 0x16
call sym.ucrtbase.dll__invalid_parameter_noinfo
or eax, 0xffffffff
jmp 0x1002ad3b
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, dword [0x1010e2c0]
mov esi, eax
cmp ecx, 0xffffffff
je 0x1006a950
call fcn.10029fa0
mov edi, eax
test edi, edi
je 0x1006a94a
cmp edi, 0xffffffff
je 0x1006a906
jmp 0x1006a8ce
mov ecx, dword [0x1010e2c0]
or edx, 0xffffffff
call fcn.10032a89
test eax, eax
je 0x1006a906
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
mov ecx, dword [0x1010e2c0]
mov edi, eax
add esp, 8
test edi, edi
je 0x1006a8f5
mov edx, edi
call fcn.10032a89
test eax, eax
jne 0x1006a8bd
mov ecx, dword [0x1010e2c0]
xor edx, edx
call fcn.10032a89
push edi
jmp 0x1006a8fe
mov eax, dword [ecx]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 4]
mov dword [esp + 0x24], eax
jmp 0x1002a9f8
mov ecx, dword [esp + 0xc]
or ecx, 1
mov dword [esp + 0xc], ecx
mov dword [esp + 0x78], ecx
jmp case.0x1002af3c.33
mov ecx, dword [esp + 0xc]
or ecx, 2
mov dword [esp + 0xc], ecx
mov dword [esp + 0x78], ecx
jmp case.0x1002af3c.33
mov edi, 0x10006a9c
mov ecx, dword [edi]
call fcn.10032fe0
test eax, eax
jne 0x1006aa0f
add edi, 4
cmp edi, 0x10006aa4
jne 0x1006a9dc
push 0xffffffffffffffff
call fcn.10032d19
add esp, 4
mov ecx, 0x1010f3b4
xchg dword [ecx], eax
push ebx
call dword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_TlsGetValue]
jmp 0x1002ae1f
push 0x10006aa4
push eax
call dword [sym.imp.api_ms_win_core_libraryloader_l1_1_0.dll_GetProcAddress]
mov edi, eax
test edi, edi
je 0x1006a9f2
push edi
call fcn.10032d19
add esp, 4
mov ecx, 0x1010f3b4
xchg dword [ecx], eax
test edi, edi
je 0x1006aa03
jmp 0x1002ae14
mov ebx, dword [0x1010e2c0]
or edx, 0xffffffff
mov ecx, ebx
call fcn.10032a89
test eax, eax
je 0x1006aa79
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
mov ecx, dword [0x1010e2c0]
mov edi, eax
add esp, 8
test edi, edi
jne 0x1006aa8a
xor edx, edx
call fcn.10032a89
push edi
call sym.ucrtbase.dll__free_base
add esp, 4
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
mov eax, 0x1010eac0
jmp 0x1002ae91
mov edx, edi
call fcn.10032a89
test eax, eax
jne 0x1006aaa5
mov ecx, dword [0x1010e2c0]
xor edx, edx
call fcn.10032a89
push edi
jmp 0x1006aa71
mov ecx, edi
call fcn.10031ad6
push 0
call sym.ucrtbase.dll__free_base
add esp, 4
jmp 0x1002ae32
mov ebx, 0x10006a9c
mov ecx, dword [ebx]
call fcn.10032fe0
test eax, eax
jne 0x1006aaf7
add ebx, 4
cmp ebx, 0x10006aa4
jne 0x1006aac0
push 0xffffffffffffffff
call fcn.10032d19
add esp, 4
mov ecx, 0x1010f3b4
xchg dword [ecx], eax
mov edx, dword [esp + 0x14]
push edx
call dword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_TlsGetValue]
jmp 0x1002ae77
push 0x10006aa4
push eax
call dword [sym.imp.api_ms_win_core_libraryloader_l1_1_0.dll_GetProcAddress]
mov ebx, eax
test ebx, ebx
je 0x1006aad6
push ebx
call fcn.10032d19
add esp, 4
mov ecx, 0x1010f3b4
xchg dword [ecx], eax
mov edx, dword [esp + 0x14]
test ebx, ebx
je 0x1006aaeb
jmp 0x1002ae6c
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, dword [0x1010e2c0]
mov esi, eax
cmp ecx, 0xffffffff
je 0x1006ab57
call fcn.10029fa0
mov dword [esp + 0x10], eax
test eax, eax
je 0x1006ab51
cmp eax, 0xffffffff
jne 0x1006abdc
jmp 0x1006ab91
mov ecx, dword [0x1010e2c0]
or edx, 0xffffffff
call fcn.10032a89
test eax, eax
je 0x1006ab91
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
mov ecx, dword [0x1010e2c0]
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
jne 0x1006aba6
xor edx, edx
call fcn.10032a89
push 0
call sym.ucrtbase.dll__free_base
add esp, 4
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
mov eax, 0x1010eac0
mov dword [esp + 0x64], eax
jmp 0x1002acab
mov edx, eax
call fcn.10032a89
test eax, eax
jne 0x1006abc5
mov ecx, dword [0x1010e2c0]
xor edx, edx
call fcn.10032a89
mov ecx, dword [esp + 0x10]
push ecx
jmp 0x1006ab89
mov ecx, dword [esp + 0x10]
call fcn.10031ad6
push 0
call sym.ucrtbase.dll__free_base
mov eax, dword [esp + 0x14]
add esp, 4
test eax, eax
je 0x1006ab91
mov ecx, dword [0x1010e2c4]
call fcn.10029fa0
imul eax, eax, 0x364
push esi
add eax, dword [esp + 0x14]
mov dword [esp + 0x18], eax
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
mov eax, dword [esp + 0x14]
test eax, eax
je 0x1006ab98
add eax, 0x10
jmp 0x1006ab9d
lea ecx, [esp + 0x50]
call fcn.10089d80
xor al, al
jmp 0x1002ac18
lea ecx, [esp + 0x50]
call fcn.10089d80
xor al, al
jmp 0x1002ac18
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
mov dword [esp + 0x6c], ecx
mov ecx, dword [ecx - 4]
mov dword [esp + 0x7c], ecx
test ecx, ecx
jns case.0x1002af3c.33
mov edx, dword [esp + 0xc]
or edx, 4
neg ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], ecx
jmp case.0x1002af3c.33
mov ecx, dword [esp + 0x10]
add ecx, 4
mov dword [esp + 0x10], ecx
mov dword [esp + 0x6c], ecx
mov ecx, dword [ecx - 4]
mov dword [esp + 0x80], ecx
test ecx, ecx
jns case.0x1002af3c.33
mov dword [esp + 0x80], 0xffffffff
jmp case.0x1002af3c.33
mov ecx, dword [esp + 0x14]
and ecx, 8
or ecx, 0
jne case.0x1002af3c.33
mov dword [esp + 0x74], 7
jmp case.0x1002abd3.7
mov ecx, dword [esp + 0x14]
and ecx, 8
or ecx, 0
jne case.0x1002af3c.33
mov dword [esp + 0x74], 8
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, dword [0x1010e2c0]
mov esi, eax
cmp ecx, 0xffffffff
je 0x1006ad95
call fcn.10029fa0
mov edi, eax
test edi, edi
je 0x1006ad8f
cmp edi, 0xffffffff
jne 0x1006af27
jmp 0x1006aedc
add esi, 2
mov dword [esp + 0x84], 1
mov dword [esp + 0x68], esi
jmp case.0x1002af3c.33
cmp ecx, 0x64
je 0x1002aed9
cmp ecx, 0x69
je 0x1002aed9
cmp ecx, 0x6f
je 0x1002aed9
cmp ecx, 0x58
jne case.0x1002af3c.33
jmp 0x1002aed9
mov dword [esp + 0x84], 8
jmp case.0x1002af3c.33
mov dword [esp + 0x84], 5
jmp case.0x1002af3c.33
mov dword [esp + 0x84], 7
jmp case.0x1002af3c.33
mov dword [esp + 0x84], 6
jmp case.0x1002af3c.33
mov dword [esp + 0x84], 0xd
jmp case.0x1002af3c.33
mov ecx, dword [0x1010e2c0]
or edx, 0xffffffff
call fcn.10032a89
test eax, eax
je 0x1006aedc
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
mov ecx, dword [0x1010e2c0]
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
test edi, edi
je 0x1006add9
mov edx, edi
call fcn.10032a89
test eax, eax
jne 0x1006af16
mov ecx, dword [0x1010e2c0]
xor edx, edx
call fcn.10032a89
lea ecx, [esp + 0x10]
call fcn.100332f5
jmp 0x1006aedc
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, dword [0x1010e2c0]
mov esi, eax
cmp ecx, 0xffffffff
je 0x1006ae20
call fcn.10029fa0
mov edi, eax
test edi, edi
je 0x1006ae1a
cmp edi, 0xffffffff
jne 0x1006af27
jmp 0x1006aedc
mov ecx, dword [0x1010e2c0]
or edx, 0xffffffff
call fcn.10032a89
test eax, eax
je 0x1006aedc
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
mov ecx, dword [0x1010e2c0]
mov edi, eax
add esp, 8
mov dword [esp + 0xc], edi
test edi, edi
je 0x1006ae64
mov edx, edi
call fcn.10032a89
test eax, eax
jne 0x1006af16
mov ecx, dword [0x1010e2c0]
xor edx, edx
call fcn.10032a89
lea ecx, [esp + 0xc]
call fcn.100332f5
jmp 0x1006aedc
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ecx, dword [0x1010e2c0]
mov esi, eax
cmp ecx, 0xffffffff
je 0x1006aea5
call fcn.10029fa0
mov edi, eax
test edi, edi
je 0x1006ae9f
cmp edi, 0xffffffff
jne 0x1006af27
jmp 0x1006aedc
mov ecx, dword [0x1010e2c0]
or edx, 0xffffffff
call fcn.10032a89
test eax, eax
je 0x1006aedc
push 0x364
push 2
call sym.ucrtbase.dll__calloc_base
mov ecx, dword [0x1010e2c0]
mov edi, eax
add esp, 8
test edi, edi
jne 0x1006aefb
xor edx, edx
call fcn.10032a89
push edi
call sym.ucrtbase.dll__free_base
add esp, 4
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
mov eax, 0x1010eac0
mov dword [eax], 0x16
call sym.ucrtbase.dll__invalid_parameter_noinfo
or ebx, 0xffffffff
jmp 0x1002acde
mov edx, edi
call fcn.10032a89
test eax, eax
jne 0x1006af16
mov ecx, dword [0x1010e2c0]
xor edx, edx
call fcn.10032a89
push edi
jmp 0x1006aed4
mov ecx, edi
call fcn.10031ad6
push 0
call sym.ucrtbase.dll__free_base
add esp, 4
test edi, edi
je 0x1006aedc
mov ecx, dword [0x1010e2c4]
call fcn.10029fa0
imul eax, eax, 0x364
push esi
add edi, eax
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
test edi, edi
je 0x1006aee3
lea eax, [edi + 0x10]
jmp 0x1006aee8
test ebx, ebx
je 0x1002ad02
or ebx, 0xffffffff
jmp 0x1002ad14
or ebx, 0xffffffff
jmp 0x1002ad14
test edx, edx
je 0x1002ad14
test ebx, ebx
jns 0x1006af7c
xor eax, eax
mov word [ecx], ax
jmp 0x1002ad14
mov eax, dword [esp + 0x34]
cmp eax, edx
jne 0x1002ad0e
jmp 0x1006af97
or ebx, 0xffffffff
jmp 0x1002ad14
mov ebx, 0xfffffffe
xor eax, eax
mov word [ecx + edx*2 - 2], ax
jmp 0x1002ad14