Function at 0x101900a0
Capabilities:
Get thread local storage value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x54
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
test ebx, ebx
jne 0x101900c0
mov eax, 0x80004005
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
xor edi, edi
push 0x6c
push edi
push ebx
mov dword [ebp - 0x34], edi
call sub.msvcrt.dll_memset
mov esi, dword [ebp + 8]
add esp, 0xc
push esi
call fcn.10175ad0
mov esi, dword [esi + 0xc]
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp + 0x10]
mov dword [ebx], eax
mov dword [ebx + 0x4c], ecx
mov dword [ebp + 0x14], edi
mov dword [ebp - 4], edi
mov dword [ebp - 8], esi
test esi, esi
jbe 0x10190102
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x7f34]
mov ecx, dword [eax]
jmp 0x10190104
xor ecx, ecx
mov dword [ebp - 0x40], edi
test esi, esi
jbe 0x101901aa
nop
cmp dword [ecx + 0x7c], 0xffffffff
jne 0x1019017f
mov esi, dword [ecx + 0x50]
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 8]
mov dword [ebp - 0x4c], eax
mov eax, edx
and eax, 0x1000
xor edi, edi
or eax, edi
je 0x10190155
and edx, 0x4200000
xor eax, eax
or edx, eax
jne 0x10190155
mov eax, dword [ecx + 0x60]
cmp eax, dword [ebx + 0x54]
jb 0x10190147
inc eax
mov dword [ebx + 0x54], eax
mov edx, dword [ecx + 0x20]
mov ecx, dword [ebp - 4]
inc dword [ebp + 0x14]
lea eax, [edx + ecx]
jmp 0x10190171
cmp dword [ebp + 0x10], esi
jne 0x1019017c
mov eax, dword [ecx + 0x60]
inc dword [ebp + 0x14]
cmp eax, dword [ebx + 0x50]
jb 0x10190169
inc eax
mov dword [ebx + 0x50], eax
mov eax, dword [ecx + 0x20]
mov ecx, dword [ebp - 4]
add eax, ecx
cmp eax, ecx
jb 0x101900b2
mov dword [ebp - 4], eax
mov esi, dword [ebp - 8]
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp eax, esi
jb 0x10190193
mov eax, esi
xor ecx, ecx
mov dword [ebp - 0x40], eax
jmp 0x1019019f
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x7f34]
mov ecx, dword [edx + eax*4]
cmp eax, esi
jb 0x10190110
mov edi, dword [ebp + 0x14]
mov ecx, dword [ebx + 0x50]
mov eax, dword [ebx + 0x54]
mov edx, dword [ebp - 4]
add eax, ecx
mov dword [ebx + 0x58], eax
mov dword [ebx + 0x5c], edx
mov ecx, 0x11
mul ecx
xor ecx, ecx
push ecx
add eax, esi
push 2
adc edx, ecx
push edx
push eax
call fcn.101dd180
xor ecx, ecx
add eax, dword [ebp - 4]
push ecx
adc edx, ecx
add eax, edi
push 4
adc edx, ecx
push edx
push eax
call fcn.101dd180
mov esi, eax
test edx, edx
ja 0x101909f1
jb 0x101901fc
cmp esi, 0xffffffff
ja 0x101909f1
mov eax, dword [0x101e316c]
test eax, eax
jge 0x10190209
xor eax, eax
jmp 0x10190210
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov edx, dword [eax]
push esi
push 0
push edx
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov dword [ebx + 8], eax
test eax, eax
je 0x101909f1
mov edx, dword [ebx + 0x58]
mov esi, edx
shl esi, 4
mov dword [ebx + 0x10], eax
add eax, esi
lea ecx, [eax + edi*4]
mov edi, dword [ebx + 0x5c]
mov dword [ebp - 0x1c], eax
mov dword [ebx + 0x14], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc]
mov dword [ebx + 0x18], ecx
lea ecx, [ecx + eax*4]
mov dword [ebx + 0x1c], ecx
lea ecx, [ecx + eax*4]
add edi, edi
mov dword [ebx + 0x44], ecx
add edi, edi
add ecx, edi
mov dword [ebx + 0x3c], ecx
lea ecx, [ecx + edx*4]
lea edx, [esi + ecx]
mov dword [ebx + 0x28], edx
add edx, esi
mov dword [ebx + 0x2c], edx
add edx, esi
mov dword [ebx + 0x20], edx
add edx, esi
mov dword [ebx + 0x24], edx
add edx, esi
mov dword [ebx + 0x30], edx
add edx, esi
mov dword [ebx + 0x34], edx
add edx, esi
push esi
mov dword [ebx + 0x38], edx
mov edx, dword [ebp + 0x10]
push 0
push ecx
mov dword [ebx + 0xc], ecx
mov dword [ebx], edx
mov dword [ebx + 4], eax
mov byte [ebx + 0x68], 0
call sub.msvcrt.dll_memset
mov eax, dword [ebx + 0x28]
add esp, 0xc
push esi
push 0xff
push eax
call sub.msvcrt.dll_memset
mov ecx, dword [ebx + 0x44]
add esp, 0xc
push edi
push 0xff
push ecx
call sub.msvcrt.dll_memset
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xc]
xor edx, edx
add esp, 0xc
mov dword [ebp + 0x14], edx
cmp ecx, edx
jbe 0x101902dd
mov eax, dword [eax + 0x7f34]
mov eax, dword [eax]
jmp 0x101902df
xor eax, eax
mov dword [ebp - 0x40], edx
test ecx, ecx
jbe 0x10190385
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 4], ecx
cmp dword [eax + 0x7c], 0xffffffff
jne 0x1019035a
mov edi, dword [eax + 0x50]
mov ecx, dword [edi + 0xc]
mov esi, dword [edi + 8]
mov dword [ebp - 0x4c], ecx
mov ecx, esi
and ecx, 0x1000
xor ebx, ebx
or ecx, ebx
je 0x10190338
and esi, 0x4200000
xor ecx, ecx
or esi, ecx
jne 0x10190338
mov ebx, dword [ebp + 0xc]
mov ecx, dword [ebx + 0x44]
inc dword [ebp + 0x14]
lea ecx, [ecx + edx*4]
add edx, dword [eax + 0x20]
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
add ecx, 4
jmp 0x10190357
mov ebx, dword [ebp + 0xc]
cmp dword [ebp + 0x10], edi
jne 0x1019035a
mov ecx, dword [ebx + 0x44]
inc dword [ebp + 0x14]
lea ecx, [ecx + edx*4]
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
add ecx, 4
add edx, dword [eax + 0x20]
mov dword [ebp - 4], ecx
mov esi, dword [ebp - 0x40]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xc]
inc esi
mov dword [ebp - 0x40], esi
cmp esi, ecx
jb 0x10190374
mov esi, ecx
xor eax, eax
mov dword [ebp - 0x40], esi
jmp 0x1019037d
mov eax, dword [eax + 0x7f34]
mov eax, dword [eax + esi*4]
cmp esi, ecx
jb 0x101902f0
mov esi, dword [ebp + 8]
push esi
call fcn.10175ad0
mov eax, dword [ebp + 0x14]
push esi
mov esi, dword [ebx + 0x14]
push 0x1018cfd0
call fcn.100dabb0
mov ecx, dword [ebx + 0x58]
xor eax, eax
add ecx, ecx
add ecx, ecx
mov dword [ebp - 4], eax
mov dword [ebp - 8], eax
je 0x101904b2
mov ecx, dword [ebx + 0x58]
add ecx, ecx
add ecx, ecx
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp + 0x14]
cmp dword [ebp - 4], edx
jae 0x10190498
mov eax, dword [ebx + 0x14]
mov ecx, dword [ebp - 4]
mov edx, dword [eax + ecx*4]
lea esi, [eax + ecx*4]
mov eax, dword [edx + 0x50]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x4c], eax
mov eax, ecx
and eax, 0x1000
xor edi, edi
or eax, edi
je 0x10190403
and ecx, 0x4200000
xor eax, eax
or ecx, eax
jne 0x10190403
mov ecx, dword [edx + 0x60]
add ecx, dword [ebx + 0x50]
jmp 0x10190406
mov ecx, dword [edx + 0x60]
mov eax, dword [ebp - 8]
mov edi, eax
shr edi, 2
mov dword [ebp - 0x1c], edi
cmp ecx, edi
jne 0x10190498
mov ecx, eax
and ecx, 3
mov dword [ebp - 0x18], ecx
cmp dword [edx + 0x64], ecx
jne 0x10190498
mov ecx, dword [ebx + 0x10]
mov dword [ecx + eax*4], esi
mov ecx, dword [edx + 0x50]
mov dword [ebp - 0x14], ecx
mov edi, esi
mov edx, dword [ebx + 0xc]
mov eax, dword [ebp - 8]
inc dword [edx + eax*4]
lea eax, [edx + eax*4]
mov eax, dword [ebp - 4]
inc eax
add edi, 4
mov dword [ebp - 4], eax
cmp eax, dword [ebp + 0x14]
jae 0x101904a2
mov edx, dword [edi]
mov eax, dword [edx + 0x50]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x4c], eax
mov eax, ecx
and eax, 0x1000
xor esi, esi
or eax, esi
je 0x1019047e
and ecx, 0x4200000
xor eax, eax
or ecx, eax
jne 0x1019047e
mov eax, dword [edx + 0x60]
add eax, dword [ebx + 0x50]
jmp 0x10190481
mov eax, dword [edx + 0x60]
cmp eax, dword [ebp - 0x1c]
jne 0x101904a2
mov ecx, dword [ebp - 0x18]
cmp dword [edx + 0x64], ecx
jne 0x101904a2
mov eax, dword [ebp - 0x14]
cmp dword [edx + 0x50], eax
je 0x10190434
jmp 0x101904a2
mov ecx, dword [ebx + 0x10]
mov dword [ecx + eax*4], 0
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp eax, dword [ebp - 0x10]
jb 0x101903be
xor eax, eax
cmp dword [ebx + 0x58], eax
jbe 0x101904d5
mov esi, dword [ebx + 0x58]
mov edx, dword [ebx + 0x28]
mov ecx, dword [ebx + 0x2c]
mov dword [ecx], eax
mov dword [edx], 0xffffffff
inc eax
add ecx, 4
add edx, 4
cmp eax, esi
jb 0x101904c2
mov dword [ebp - 4], 0
jmp 0x101904e3
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 0x38]
mov ebx, dword [ebx + 0x58]
mov esi, dword [ebp + 8]
lea ecx, [ebx*4]
push ecx
xor edi, edi
push edi
push eax
mov dword [ebp - 8], eax
call sub.msvcrt.dll_memset
mov eax, dword [esi + 0x10]
add esp, 0xc
mov dword [ebp + 0x14], edi
cmp eax, edi
jbe 0x10190514
mov edx, dword [esi + 0x14]
mov ecx, dword [edx]
jmp 0x10190516
xor ecx, ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x38], edi
cmp eax, edi
jbe 0x1019096d
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x3c]
test eax, 0xf0000000
je 0x1019093d
and eax, 0xfff00000
cmp eax, 0x70700000
ja 0x10190568
je 0x10190596
cmp eax, 0x70200000
ja 0x1019055a
je 0x10190596
cmp eax, 0x50300000
je 0x10190596
cmp eax, 0x70100000
jmp 0x10190584
cmp eax, 0x70500000
je 0x10190596
cmp eax, 0x70600000
jmp 0x10190584
cmp eax, 0x70d00000
ja 0x1019057f
je 0x10190596
cmp eax, 0x70b00000
je 0x10190596
cmp eax, 0x70c00000
jmp 0x10190584
cmp eax, 0x71000000
je 0x10190596
mov ecx, dword [ebp + 8]
test byte [ecx + 0x7fd0], 4
je 0x10190700
mov edx, dword [ebp - 0x3c]
mov eax, dword [edx + 0xc]
mov eax, dword [eax]
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [eax + 0x50]
je 0x101905d3
mov eax, dword [eax + 0x50]
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 8]
mov eax, ecx
mov dword [ebp - 0x4c], edx
and eax, 0x1000
xor edx, edx
or eax, edx
je 0x1019093d
and ecx, 0x4200000
xor eax, eax
or ecx, eax
jne 0x1019093d
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ecx + 0x3c]
mov eax, dword [ecx]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx]
mov ebx, dword [ecx + 0x60]
mov ecx, dword [ecx + 0x50]
xor edx, edx
and esi, 0xfffff
div esi
mov edx, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov dword [ebp - 0x4c], ecx
mov ecx, edx
and ecx, 0x1000
xor edi, edi
or ecx, edi
je 0x10190619
and edx, 0x4200000
xor ecx, ecx
or edx, ecx
jne 0x10190619
mov edx, dword [ebp + 0xc]
add ebx, dword [edx + 0x50]
test eax, eax
jbe 0x10190700
mov edi, dword [ebp - 8]
lea ecx, [esi*4]
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x3c]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0xc]
mov esi, dword [ecx + eax]
cmp esi, 0xffffffff
je 0x1019065f
lea esp, [esp]
mov eax, dword [esi + 0x7c]
cmp eax, 0xffffffff
je 0x1019065f
mov esi, eax
cmp esi, 0xffffffff
jne 0x10190650
mov ecx, dword [esi + 0x50]
cmp dword [ebp + 0x10], ecx
je 0x1019068c
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x2c], eax
mov eax, edx
and eax, 0x1000
xor edi, edi
or eax, edi
je 0x101906ed
and edx, 0x4200000
xor eax, eax
or edx, eax
jne 0x101906ed
mov edi, dword [ebp - 8]
mov edx, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov eax, edx
mov dword [ebp - 0x2c], ecx
and eax, 0x1000
xor ecx, ecx
or eax, ecx
je 0x101906b9
and edx, 0x4200000
xor eax, eax
or edx, eax
jne 0x101906b9
mov eax, dword [esi + 0x60]
mov edx, dword [ebp + 0xc]
add eax, dword [edx + 0x50]
jmp 0x101906bc
mov eax, dword [esi + 0x60]
cmp ebx, eax
je 0x101906f0
cmp dword [ebp - 4], 1
jne 0x101906e1
mov ecx, dword [ebp + 0xc]
mov esi, dword [ecx + 0x3c]
mov edx, dword [edi + ebx*4]
mov esi, dword [esi + ebx*4]
mov ecx, dword [ecx + 0x3c]
mov dword [esi + edx*4], eax
mov edx, dword [edi + eax*4]
mov ecx, dword [ecx + eax*4]
mov dword [ecx + edx*4], ebx
inc dword [edi + ebx*4]
inc dword [edi + eax*4]
add dword [ebp + 0x14], 2
jmp 0x101906f0
mov edi, dword [ebp - 8]
mov edx, dword [ebp - 0x1c]
add dword [ebp - 0xc], edx
sub dword [ebp - 0x14], 1
jne 0x10190638
mov esi, dword [ebp - 0x3c]
mov eax, dword [esi + 0x3c]
and eax, 0xfff00000
cmp eax, 0x50700000
jne 0x1019093d
mov ecx, dword [ebp + 8]
test byte [ecx + 0x7fd5], 0x10
je 0x1019093d
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi]
and ecx, 0xfffff
xor edx, edx
div ecx
test eax, eax
jbe 0x1019093d
mov dword [ebp - 0x14], 0
lea edx, [ecx*4]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2c], edx
jmp 0x10190759
mov esi, dword [ebp - 0x3c]
mov ecx, dword [esi + 4]
mov esi, dword [eax + ecx]
cmp esi, 0xffffffff
je 0x10190773
mov eax, dword [esi + 0x7c]
cmp eax, 0xffffffff
je 0x10190773
mov esi, eax
cmp esi, 0xffffffff
jne 0x10190764
mov ecx, dword [esi + 0x50]
cmp dword [ebp + 0x10], ecx
je 0x101907a5
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x24], eax
mov eax, edx
and eax, 0x1000
xor edi, edi
or eax, edi
je 0x1019092a
and edx, 0x4200000
xor eax, eax
or edx, eax
jne 0x1019092a
mov edx, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov eax, edx
mov dword [ebp - 0x24], ecx
and eax, 0x1000
xor ecx, ecx
or eax, ecx
je 0x101907d5
and edx, 0x4200000
xor eax, eax
or edx, eax
jne 0x101907d5
mov esi, dword [esi + 0x60]
mov edx, dword [ebp + 0xc]
add esi, dword [edx + 0x50]
mov dword [ebp - 0xc], esi
jmp 0x101907db
mov eax, dword [esi + 0x60]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x10]
test eax, eax
jbe 0x101907ec
mov ecx, dword [ecx + 0x14]
mov ecx, dword [ecx]
jmp 0x101907ee
xor ecx, ecx
cmp dword [ebp - 0x38], 0
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], 0
jbe 0x1019092a
cmp dword [ebp - 0x40], eax
jae 0x1019092a
mov edx, dword [ebp - 0x44]
mov eax, dword [edx + 0x3c]
and eax, 0xfff00000
cmp eax, 0x50700000
jne 0x101908f9
mov eax, edx
mov ecx, dword [eax + 0x3c]
mov eax, dword [eax]
and ecx, 0xfffff
xor edx, edx
div ecx
test eax, eax
jbe 0x101908f9
mov ebx, dword [ebp - 8]
add ecx, ecx
add ecx, ecx
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x18], eax
mov edi, edi
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x10]
mov eax, dword [edx + 4]
mov edi, dword [ecx + eax]
mov ecx, dword [edi + 0x50]
cmp dword [ebp + 0x10], ecx
je 0x10190886
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x4c], eax
mov eax, edx
and eax, 0x1000
xor esi, esi
or eax, esi
je 0x101908e9
and edx, 0x4200000
xor eax, eax
or edx, eax
jne 0x101908e9
mov edx, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov eax, edx
mov dword [ebp - 0x4c], ecx
and eax, 0x1000
xor ecx, ecx
or eax, ecx
je 0x101908b3
and edx, 0x4200000
xor eax, eax
or edx, eax
jne 0x101908b3
mov eax, dword [edi + 0x60]
mov edx, dword [ebp + 0xc]
add eax, dword [edx + 0x50]
jmp 0x101908b9
mov eax, dword [edi + 0x60]
mov edx, dword [ebp + 0xc]
cmp dword [ebp - 4], 1
jne 0x101908dc
mov ecx, dword [edx + 0x3c]
mov edi, dword [ecx + eax*4]
mov esi, dword [ebx + eax*4]
mov ecx, dword [ebp - 0xc]
mov edx, dword [edx + 0x3c]
mov dword [edi + esi*4], ecx
mov esi, dword [ebx + ecx*4]
mov edx, dword [edx + ecx*4]
mov dword [edx + esi*4], eax
jmp 0x101908df
mov ecx, dword [ebp - 0xc]
inc dword [ebx + eax*4]
inc dword [ebx + ecx*4]
add dword [ebp + 0x14], 2
mov eax, dword [ebp - 0x24]
add dword [ebp - 0x10], eax
sub dword [ebp - 0x18], 1
jne 0x10190850
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x10]
inc ecx
mov dword [ebp - 0x40], ecx
cmp ecx, eax
jb 0x10190918
mov ecx, eax
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], ecx
jmp 0x10190921
mov edx, dword [edx + 0x14]
mov edx, dword [edx + ecx*4]
mov dword [ebp - 0x44], edx
cmp ecx, dword [ebp - 0x38]
jb 0x10190802
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x2c]
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x14], eax
jne 0x10190756
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x10]
inc ecx
mov dword [ebp - 0x38], ecx
cmp ecx, eax
jb 0x1019095c
mov ecx, eax
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], ecx
jmp 0x10190965
mov edx, dword [edx + 0x14]
mov edx, dword [edx + ecx*4]
mov dword [ebp - 0x3c], edx
cmp ecx, eax
jb 0x10190524
cmp dword [ebp - 4], 0
jne 0x101909d5
mov esi, dword [ebp + 0x14]
cmp esi, 0x3fffffff
jbe 0x10190982
xor eax, eax
jmp 0x101909a9
mov eax, dword [0x101e316c]
test eax, eax
jge 0x1019098f
xor eax, eax
jmp 0x10190996
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov edx, dword [eax]
lea ecx, [esi*4]
push ecx
push 0
push edx
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov edi, dword [ebp + 0xc]
mov dword [edi + 0x40], eax
test eax, eax
je 0x101909f1
xor ecx, ecx
cmp dword [edi + 0x58], ecx
jbe 0x101909d5
mov esi, dword [edi + 0x38]
mov edx, dword [edi + 0x3c]
mov edi, dword [edi + 0x58]
lea ebx, [eax + ecx*4]
mov dword [edx], ebx
add ecx, dword [esi]
add edx, 4
add esi, 4
sub edi, 1
jne 0x101909c3
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp eax, 2
jb 0x101904e0
mov eax, dword [ebp - 0x34]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
pop edi
pop esi
mov eax, 0x8007000e
pop ebx
mov esp, ebp
pop ebp
ret 0x10