Function at 0x100c8d90
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x10189ea2
mov eax, dword fs:[0]
push eax
sub esp, 0x128
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101cd7b4]
xor eax, esp
push eax
lea eax, [esp + 0x13c]
mov dword fs:[0], eax
mov ebp, ecx
xor esi, esi
mov dword [esp + 0x18], esi
call fcn.10021980
mov dword [esp + 0x7c], eax
add eax, 4
push eax
mov dword [esp + 0x7c], 0x10199608
mov dword [esp + 0x78], eax
call dword [0x10199070]
mov ebx, dword [esp + 0x14c]
mov eax, dword [ebp + 0x59d0]
add ebx, 4
mov dword [esp + 0x144], esi
lea esi, [ebp + 0x59cc]
push ebx
lea ecx, [esp + 0x4c]
push ecx
mov ecx, esi
mov dword [esp + 0x4c], eax
call fcn.10063080
mov edi, eax
mov eax, dword [edi]
test eax, eax
je 0x100c8e1e
cmp eax, esi
je 0x100c8e23
call fcn.10158fad
mov edx, dword [esp + 0x44]
cmp dword [edi + 4], edx
je 0x100c8e34
push ebx
mov ecx, esi
call fcn.10065d20
mov esi, dword [esp + 0x14c]
push esi
lea ecx, [ebp + 0x1c]
mov byte [esp + 0x27], 0
call fcn.1000b140
lea eax, [esi + 4]
push eax
lea eax, [esp + 0x3c]
lea edi, [ebp + 0x28]
push eax
mov ecx, edi
call fcn.10004e00
mov ebx, dword [esp + 0x38]
test ebx, ebx
mov ecx, dword [edi + 4]
mov dword [esp + 0x44], ecx
je 0x100c8e6f
cmp ebx, edi
je 0x100c8e74
call fcn.10158fad
mov esi, dword [esp + 0x3c]
cmp esi, dword [esp + 0x44]
je 0x100c8ee4
test ebx, ebx
jne 0x100c8e87
call fcn.10158fad
cmp esi, dword [ebx + 4]
jne 0x100c8e91
call fcn.10158fad
cmp dword [esi + 0x10], 0
je 0x100c8ee4
cmp esi, dword [ebx + 4]
jne 0x100c8ea1
call fcn.10158fad
add dword [esi + 0x10], 0xffffffff
cmp esi, dword [ebx + 4]
jne 0x100c8eaf
call fcn.10158fad
cmp dword [esi + 0x10], 0
jne 0x100c8ee4
push esi
push ebx
lea edx, [esp + 0x50]
push edx
mov ecx, edi
call fcn.10022e80
mov ecx, dword [ebp + 0x4cd4]
test ecx, ecx
je 0x100c8edf
mov eax, dword [esp + 0x14c]
add eax, 4
mov eax, dword [eax]
push eax
call fcn.10018a90
mov byte [esp + 0x23], 1
cmp dword [ebp + 0x30], 0
jne 0x100c8ef6
call dword [0x1019907c]
mov dword [ebp + 0x59b8], eax
lea ecx, [esp + 0x24]
call fcn.1005bad0
mov dword [esp + 0x28], eax
mov byte [eax + 0x2d], 1
mov eax, dword [esp + 0x28]
mov dword [eax + 4], eax
mov eax, dword [esp + 0x28]
mov dword [eax], eax
mov eax, dword [esp + 0x28]
xor ebx, ebx
mov dword [eax + 8], eax
mov dword [esp + 0x2c], ebx
mov ecx, dword [ebp + 0x64]
mov esi, dword [ecx]
lea eax, [ebp + 0x60]
mov edi, eax
mov byte [esp + 0x144], 1
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], edi
mov dword [esp + 0x44], ecx
nop
cmp edi, ebx
je 0x100c8f4b
lea eax, [ebp + 0x60]
cmp edi, eax
je 0x100c8f50
call fcn.10158fad
cmp esi, dword [esp + 0x44]
je 0x100c906d
cmp edi, ebx
jne 0x100c8f63
call fcn.10158fad
cmp esi, dword [edi + 4]
jne 0x100c8f6d
call fcn.10158fad
mov edx, dword [esi + 0xc]
mov eax, dword [esp + 0x14c]
cmp edx, dword [eax]
jne 0x100c9057
cmp esi, dword [edi + 4]
jne 0x100c8f89
call fcn.10158fad
cmp esi, dword [edi + 4]
mov ecx, dword [esi + 0x2c]
push ecx
jne 0x100c8f97
call fcn.10158fad
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push 0xffffffffffffffff
lea eax, [esi + 0x30]
push ebx
mov edi, 0xf
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push eax
mov byte [ecx + 4], 0
call fcn.10005490
lea edx, [esp + 0xa8]
push edx
call fcn.10036da0
add esp, 0x24
mov esi, eax
push 0xffffffffffffffff
push ebx
push esi
lea ecx, [esp + 0x60]
mov byte [esp + 0x150], 2
mov dword [esp + 0x78], edi
mov dword [esp + 0x74], ebx
mov byte [esp + 0x64], 0
call fcn.10005490
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x4c]
push edx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x14c], 3
call fcn.100395d0
mov esi, 0x10
cmp dword [esp + 0x6c], esi
jb 0x100c9029
mov eax, dword [esp + 0x58]
push eax
call fcn.10158c57
add esp, 4
cmp dword [esp + 0xa0], esi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebx
mov byte [esp + 0x58], 0
mov byte [esp + 0x144], 1
jb 0x100c9057
mov ecx, dword [esp + 0x8c]
push ecx
call fcn.10158c57
add esp, 4
lea ecx, [esp + 0x30]
call fcn.100a4740
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x30]
jmp 0x100c8f40
mov edx, dword [esp + 0x28]
mov ebx, dword [edx]
lea edi, [esp + 0x24]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], edi
nop
test edi, edi
mov esi, dword [esp + 0x28]
je 0x100c9090
lea eax, [esp + 0x24]
cmp edi, eax
je 0x100c9095
call fcn.10158fad
cmp ebx, esi
je 0x100c90de
test edi, edi
jne 0x100c90a2
call fcn.10158fad
cmp ebx, dword [edi + 4]
jne 0x100c90ac
call fcn.10158fad
cmp ebx, dword [edi + 4]
lea esi, [ebx + 0xc]
jne 0x100c90b9
call fcn.10158fad
mov ecx, dword [esi + 0x1c]
push ecx
push 0
push 1
push 0
push esi
mov ecx, ebp
call fcn.100c6960
lea ecx, [esp + 0x18]
call fcn.1005b250
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
jmp 0x100c9080
cmp byte [esp + 0x23], 0
je 0x100c97b1
mov eax, dword [esp + 0x14c]
add eax, 4
push eax
lea edx, [esp + 0x3c]
lea edi, [ebp + 0x5904]
push edx
mov ecx, edi
call fcn.1005c0b0
mov esi, dword [esp + 0x38]
test esi, esi
mov ebx, dword [edi + 4]
je 0x100c9115
cmp esi, edi
je 0x100c911a
call fcn.10158fad
mov eax, dword [esp + 0x3c]
cmp eax, ebx
je 0x100c9130
push eax
push esi
lea eax, [esp + 0x50]
push eax
mov ecx, edi
call fcn.1005d060
mov eax, dword [ebp + 0x590c]
xor ecx, ecx
cmp eax, ecx
je 0x100c93bd
cmp eax, 1
jne 0x100c91fa
mov eax, dword [edi + 4]
mov esi, dword [eax]
cmp esi, eax
jne 0x100c9157
call fcn.10158fad
cmp byte [esi + 0x14], 0
je 0x100c9171
mov eax, dword [edi + 4]
mov esi, dword [eax]
cmp esi, eax
jne 0x100c916b
call fcn.10158fad
movzx eax, word [esi + 0x16]
jmp 0x100c9173
xor eax, eax
mov word [ebp + 0x5946], ax
mov eax, dword [edi + 4]
mov esi, dword [eax]
cmp esi, eax
jne 0x100c9188
call fcn.10158fad
cmp byte [esi + 0x14], 0
je 0x100c91a2
mov eax, dword [edi + 4]
mov esi, dword [eax]
cmp esi, eax
jne 0x100c919c
call fcn.10158fad
movzx eax, word [esi + 0x18]
jmp 0x100c91a4
xor eax, eax
mov word [ebp + 0x5948], ax
mov eax, dword [edi + 4]
mov esi, dword [eax]
cmp esi, eax
jne 0x100c91b9
call fcn.10158fad
cmp byte [esi + 0x14], 0
je 0x100c91d3
mov eax, dword [edi + 4]
mov esi, dword [eax]
cmp esi, eax
jne 0x100c91cd
call fcn.10158fad
movzx eax, word [esi + 0x20]
jmp 0x100c91d5
xor eax, eax
mov word [ebp + 0x5950], ax
mov eax, dword [edi + 4]
mov esi, dword [eax]
cmp esi, eax
jne 0x100c91ea
call fcn.10158fad
mov cx, word [esi + 0x22]
mov word [ebp + 0x5952], cx
jmp 0x100c93fc
xor eax, eax
mov word [ebp + 0x5946], ax
mov word [ebp + 0x5948], ax
mov eax, dword [edi + 4]
mov esi, dword [eax]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], edi
jmp 0x100c9220
test edi, edi
mov ebx, dword [ebp + 0x5908]
je 0x100c9234
lea eax, [ebp + 0x5904]
cmp edi, eax
je 0x100c9239
call fcn.10158fad
cmp esi, ebx
je 0x100c93fc
test edi, edi
jne 0x100c924a
call fcn.10158fad
cmp esi, dword [edi + 4]
jne 0x100c9254
call fcn.10158fad
cmp byte [esi + 0x14], 0
je 0x100c92f1
cmp esi, dword [edi + 4]
jne 0x100c9268
call fcn.10158fad
movzx eax, word [ebp + 0x5946]
cmp ax, word [esi + 0x16]
jbe 0x100c927a
movzx eax, ax
jmp 0x100c9288
cmp esi, dword [edi + 4]
jne 0x100c9284
call fcn.10158fad
movzx eax, word [esi + 0x16]
mov word [ebp + 0x5946], ax
cmp esi, dword [edi + 4]
jne 0x100c9299
call fcn.10158fad
movzx eax, word [ebp + 0x5948]
cmp ax, word [esi + 0x18]
jbe 0x100c92ab
movzx eax, ax
jmp 0x100c92b9
cmp esi, dword [edi + 4]
jne 0x100c92b5
call fcn.10158fad
movzx eax, word [esi + 0x18]
mov word [ebp + 0x5948], ax
cmp esi, dword [edi + 4]
jne 0x100c92ca
call fcn.10158fad
movzx eax, word [ebp + 0x5950]
cmp ax, word [esi + 0x20]
jbe 0x100c92dc
movzx eax, ax
jmp 0x100c92ea
cmp esi, dword [edi + 4]
jne 0x100c92e6
call fcn.10158fad
movzx eax, word [esi + 0x20]
mov word [ebp + 0x5950], ax
cmp esi, dword [edi + 4]
jne 0x100c92fb
call fcn.10158fad
movzx eax, word [ebp + 0x5952]
cmp ax, word [esi + 0x22]
jbe 0x100c930d
movzx eax, ax
jmp 0x100c931b
cmp esi, dword [edi + 4]
jne 0x100c9317
call fcn.10158fad
movzx eax, word [esi + 0x22]
mov word [ebp + 0x5952], ax
cmp esi, dword [edi + 4]
jne 0x100c932c
call fcn.10158fad
mov dl, byte [esi + 0x24]
or byte [ebp + 0x5954], dl
cmp esi, dword [edi + 4]
jne 0x100c933f
call fcn.10158fad
mov al, byte [esi + 0x25]
or byte [ebp + 0x5955], al
cmp esi, dword [edi + 4]
jne 0x100c9352
call fcn.10158fad
mov cl, byte [esi + 0x26]
or byte [ebp + 0x5956], cl
cmp esi, dword [edi + 4]
jne 0x100c9365
call fcn.10158fad
mov dl, byte [esi + 0x27]
or byte [ebp + 0x5957], dl
cmp esi, dword [edi + 4]
jne 0x100c9378
call fcn.10158fad
mov al, byte [esi + 0x28]
or byte [ebp + 0x5958], al
cmp esi, dword [edi + 4]
jne 0x100c938b
call fcn.10158fad
mov cl, byte [esi + 0x29]
or byte [ebp + 0x5959], cl
cmp esi, dword [edi + 4]
jne 0x100c939e
call fcn.10158fad
mov dl, byte [esi + 0x2a]
or byte [ebp + 0x595a], dl
lea ecx, [esp + 0x18]
call fcn.1005b1e0
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
jmp 0x100c9220
mov word [ebp + 0x5950], cx
mov word [ebp + 0x5952], cx
mov byte [ebp + 0x5954], 0
mov byte [ebp + 0x5955], 0
mov byte [ebp + 0x5956], 0
mov byte [ebp + 0x5957], 0
mov byte [ebp + 0x5958], 0
mov byte [ebp + 0x5959], 0
mov byte [ebp + 0x595a], 0
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 4]
push ecx
lea ecx, [esp + 0x28]
call fcn.10038c40
mov eax, dword [esp + 0x28]
mov dword [eax + 4], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], 0
mov dword [eax], eax
mov eax, dword [esp + 0x28]
mov dword [eax + 8], eax
mov ecx, dword [ebp + 0x64]
mov edi, dword [ecx]
lea eax, [ebp + 0x60]
mov esi, eax
mov edx, ecx
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], esi
mov dword [esp + 0x84], edx
test esi, esi
je 0x100c944f
lea eax, [ebp + 0x60]
cmp esi, eax
je 0x100c9454
call fcn.10158fad
cmp edi, dword [esp + 0x84]
je 0x100c96bb
test esi, esi
jne 0x100c946a
call fcn.10158fad
cmp edi, dword [esi + 4]
jne 0x100c9474
call fcn.10158fad
cmp dword [edi + 0x17c], 0
je 0x100c969c
mov esi, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
cmp esi, dword [eax + 4]
jne 0x100c9493
call fcn.10158fad
cmp byte [esi + 0x190], 0
je 0x100c969c
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
cmp ecx, dword [edx + 4]
jne 0x100c94b2
call fcn.10158fad
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x17c]
mov edx, dword [eax + 8]
mov edx, dword [edx + 0x5c]
lea ecx, [eax + 8]
lea eax, [esp + 0x54]
push eax
call edx
mov edi, eax
lea esi, [ebp + 0x5934]
push edi
mov ecx, esi
call fcn.100a6520
test esi, esi
mov ebx, eax
mov dword [esp + 0x3c], ebx
jne 0x100c94eb
call fcn.10158fad
cmp ebx, dword [esi + 4]
mov dword [esp + 0x38], esi
je 0x100c9520
xor eax, eax
mov cl, byte [eax + edi]
mov dl, byte [eax + ebx + 0xc]
cmp cl, dl
ja 0x100c96b2
jb 0x100c9520
cmp eax, 0x13
jne 0x100c9518
mov cl, byte [edi + 0x13]
cmp cl, byte [ebx + 0x1f]
je 0x100c96b2
add eax, 1
cmp eax, 0x14
jb 0x100c94f6
mov eax, dword [esi + 4]
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], esi
lea eax, [esp + 0x40]
mov edi, dword [eax]
test edi, edi
mov edx, dword [esi + 4]
mov ebx, dword [eax + 4]
mov dword [esp + 0x4c], edx
je 0x100c9543
cmp edi, esi
je 0x100c9548
call fcn.10158fad
cmp ebx, dword [esp + 0x4c]
je 0x100c969c
test edi, edi
jne 0x100c955b
call fcn.10158fad
cmp ebx, dword [edi + 4]
jne 0x100c9565
call fcn.10158fad
mov ecx, dword [ebx + 0x20]
mov eax, dword [esp + 0x14c]
mov esi, dword [eax + 4]
add eax, 4
mov eax, 0x51eb851f
mul ecx
shr edx, 5
mov edi, edx
mov eax, 0x431bde83
mul ecx
shr edx, 0x12
mov ebx, edx
sub ebx, edi
mov eax, 0x51eb851f
imul ebx, ebx, 0x64
mul esi
shr edx, 5
add ebx, ecx
mov ecx, edx
mov eax, 0x431bde83
mul esi
shr edx, 0x12
sub edx, ecx
imul edx, edx, 0x64
add edx, esi
cmp ebx, edx
jne 0x100c969c
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x30]
cmp esi, dword [edi + 4]
jne 0x100c95cb
call fcn.10158fad
cmp esi, dword [edi + 4]
mov edx, dword [esi + 0x2c]
push edx
jne 0x100c95d9
call fcn.10158fad
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
xor ebx, ebx
push 0xffffffffffffffff
lea eax, [esi + 0x30]
push ebx
mov edi, 0xf
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push eax
mov byte [ecx + 4], bl
call fcn.10005490
lea eax, [esp + 0xa8]
push eax
call fcn.10036da0
add esp, 0x24
mov esi, eax
push 0xffffffffffffffff
push ebx
push esi
lea ecx, [esp + 0x60]
mov byte [esp + 0x150], 4
mov dword [esp + 0x78], edi
mov dword [esp + 0x74], ebx
mov byte [esp + 0x64], bl
call fcn.10005490
mov ecx, dword [esi + 0x1c]
mov dword [esp + 0x70], ecx
lea edx, [esp + 0x54]
push edx
lea eax, [esp + 0x134]
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x14c], 5
call fcn.100395d0
mov esi, 0x10
cmp dword [esp + 0x6c], esi
jb 0x100c966e
mov ecx, dword [esp + 0x58]
push ecx
call fcn.10158c57
add esp, 4
cmp dword [esp + 0xa0], esi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebx
mov byte [esp + 0x58], 0
mov byte [esp + 0x144], 1
jb 0x100c969c
mov edx, dword [esp + 0x8c]
push edx
call fcn.10158c57
add esp, 4
lea ecx, [esp + 0x30]
call fcn.100a4740
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
jmp 0x100c9444
lea eax, [esp + 0x38]
jmp 0x100c952f
mov eax, dword [esp + 0x28]
mov ebx, dword [eax]
lea edi, [esp + 0x24]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], edi
lea ecx, [ecx]
test edi, edi
mov esi, dword [esp + 0x28]
je 0x100c96e0
lea ecx, [esp + 0x24]
cmp edi, ecx
je 0x100c96e5
call fcn.10158fad
cmp ebx, esi
je 0x100c972e
test edi, edi
jne 0x100c96f2
call fcn.10158fad
cmp ebx, dword [edi + 4]
jne 0x100c96fc
call fcn.10158fad
cmp ebx, dword [edi + 4]
lea esi, [ebx + 0xc]
jne 0x100c9709
call fcn.10158fad
mov edx, dword [esi + 0x1c]
push edx
push 0
push 1
push 0
push esi
mov ecx, ebp
call fcn.100c6960
lea ecx, [esp + 0x18]
call fcn.1005b250
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
jmp 0x100c96d0
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 4]
add eax, 4
mov dword [esp + 0x18], eax
mov eax, 0x51eb851f
mul ecx
shr edx, 5
mov esi, edx
mov eax, 0x431bde83
mul ecx
shr edx, 0x12
sub edx, esi
imul edx, edx, 0x64
add edx, ecx
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x3c]
lea esi, [ebp + 0x5910]
push ecx
mov ecx, esi
mov dword [esp + 0x38], edx
call fcn.10063080
mov edi, dword [esp + 0x38]
test edi, edi
mov ebx, dword [esi + 4]
je 0x100c9786
cmp edi, esi
je 0x100c978b
call fcn.10158fad
cmp dword [esp + 0x3c], ebx
je 0x100c97b1
mov edx, dword [esp + 0x18]
mov eax, dword [edx]
push eax
mov ecx, ebp
call fcn.100b3b10
mov ecx, dword [esp + 0x3c]
push ecx
push edi
lea edx, [esp + 0x50]
push edx
mov ecx, esi
call fcn.100078b0
mov eax, dword [esp + 0x14c]
push eax
lea ecx, [esp + 0x44]
lea esi, [ebp + 0x58f8]
push ecx
mov ecx, esi
call fcn.10063080
mov eax, dword [esp + 0x40]
test eax, eax
mov edi, dword [esi + 4]
je 0x100c97da
cmp eax, esi
je 0x100c97df
call fcn.10158fad
cmp dword [esp + 0x44], edi
je 0x100c9978
mov dword [esp + 0xa8], 0x1019a208
mov dword [esp + 0xb0], 0x1019981c
mov dword [esp + 0xfc], 0x101995ec
xor edi, edi
push edi
lea edx, [esp + 0xb8]
push edx
lea ecx, [esp + 0xb0]
mov byte [esp + 0x14c], 6
mov dword [esp + 0x20], 1
call fcn.1000ee10
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax + 4]
mov dword [esp + ecx + 0xa8], 0x10199688
lea ecx, [esp + 0xb4]
mov dword [esp + 0x144], 7
call fcn.10002db0
mov dword [esp + 0xb4], 0x10199650
mov dword [esp + 0xf0], edi
mov dword [esp + 0xf4], edi
mov edi, dword [esp + 0x14c]
mov edx, dword [edi]
push str.__SetSafeNetworkConnMode_leave
push edx
lea eax, [esp + 0xb8]
push str.inst:
push eax
mov byte [esp + 0x154], 9
call fcn.10010040
add esp, 8
mov ecx, eax
call fcn.100dac10
push eax
call fcn.10010040
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 4]
add esp, 8
cmp byte [eax + 0x11], 0
mov ebx, ecx
jne 0x100c98d6
mov ecx, dword [edi]
cmp ecx, dword [eax + 0xc]
jae 0x100c98cd
mov ebx, eax
mov eax, dword [eax]
jmp 0x100c98d0
mov eax, dword [eax + 8]
cmp byte [eax + 0x11], 0
je 0x100c98c2
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 4]
cmp byte [eax + 0x11], 0
mov edi, ecx
jne 0x100c9904
mov ecx, dword [esp + 0x14c]
mov ecx, dword [ecx]
lea ecx, [ecx]
cmp dword [eax + 0xc], ecx
jae 0x100c98fa
mov eax, dword [eax + 8]
jmp 0x100c98fe
mov edi, eax
mov eax, dword [eax]
cmp byte [eax + 0x11], 0
je 0x100c98f0
mov eax, esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edi
mov edi, edi
test eax, eax
je 0x100c9918
cmp eax, esi
je 0x100c991d
call fcn.10158fad
cmp dword [esp + 0x1c], ebx
je 0x100c9932
lea ecx, [esp + 0x18]
call fcn.10001bb0
mov eax, dword [esp + 0x18]
jmp 0x100c9910
push ebx
push esi
push edi
push esi
lea edx, [esp + 0x58]
push edx
mov ecx, esi
call fcn.10009910
mov ecx, ebp
call fcn.100a80c0
lea ecx, [esp + 0xfc]
mov byte [esp + 0x144], 1
call fcn.10002b60
lea eax, [esp + 0xfc]
push eax
mov dword [esp + 0x100], 0x101995ec
call fcn.10158317
add esp, 4
mov ecx, dword [esp + 0x14c]
mov edx, dword [ecx]
push edx
call fcn.1010c7c8
mov eax, dword [esp + 0x2c]
mov edx, dword [eax]
add esp, 4
push eax
lea ecx, [esp + 0x28]
push ecx
push edx
mov esi, ecx
push esi
lea eax, [esp + 0x58]
push eax
mov byte [esp + 0x158], 0
call fcn.1003a030
mov ecx, dword [esp + 0x28]
push ecx
call fcn.10158c57
mov edx, dword [esp + 0x78]
add esp, 4
xor eax, eax
push edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
call dword [0x10199074]
mov ecx, dword [esp + 0x13c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x134
ret 4