Function at 0x10036720
Capabilities:
Log keystrokes via polling

Disassembly:
push 0x2b0
mov eax, 0x10062dd9
call fcn.1005fed1
mov edi, ecx
mov ebx, dword [ebp + 0x10]
xor ecx, ecx
mov edx, dword [ebp + 0x14]
xor eax, eax
mov esi, dword [ebp + 0x18]
inc ecx
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x2a0], ecx
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x2a4], ebx
mov dword [ebp - 0x298], edx
mov dword [ebp - 0x29c], esi
cmp ecx, 0x19c
ja 0x10036fc6
je 0x10036fa1
cmp ecx, 0x189
ja 0x10036c39
je 0x10036bd8
cmp ecx, 0x182
ja 0x10036aa0
je 0x10036a92
sub ecx, 1
je 0x10036993
sub ecx, 1
je 0x1003694e
sub ecx, 5
je 0x100368c4
sub ecx, 1
je 0x10036859
sub ecx, 0xf8
je 0x10036849
sub ecx, 0x80
je 0x100367e8
sub ecx, 1
jne 0x10036897
push edx
lea ecx, [edi - 0x18]
push ebx
call fcn.100377a2
mov dword [esi], eax
jmp 0x100373fc
movaps xmm0, xmmword [0x1006eb00]
movups xmmword [ebp - 0x2bc], xmm0
mov dword [ebp - 0x2ac], eax
push edx
lea esi, [edi - 0x18]
mov dword [ebp - 4], 4
push esi
lea ecx, [ebp - 0x2bc]
call fcn.10035a91
lea eax, [ebp - 0x2bc]
mov ecx, esi
push eax
call fcn.100376f7
mov ecx, dword [ebp - 0x29c]
mov dword [ecx], eax
mov dword [ebp - 4], 5
mov ecx, dword [ebp - 0x2b8]
test ecx, ecx
je 0x100373fc
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
jmp 0x100373fc
push ebx
lea ecx, [edi - 0x18]
call fcn.100365f7
mov dword [esi], eax
jmp 0x100373f4
test byte [edi + 0x88], 0x10
je 0x1003687a
lea ecx, [edi - 0x18]
test ecx, ecx
je 0x1003687a
push eax
push 0xffffffffffffffff
push 0x186
push ecx
call sym.WCLDll.dll_wclSendMessage
add esp, 0x10
lea esi, [edi - 0x18]
push 5
push dword [esi + 0x9c]
mov ecx, esi
call fcn.1002f713
mov edx, dword [esi]
lea eax, [esi + 0x5c]
push eax
mov ecx, esi
call dword [edx + 0x24]
mov ecx, dword [ebp + 0xc]
mov esi, dword [ebp - 0x29c]
mov edx, dword [ebp - 0x298]
push 0
push esi
push edx
push ebx
push ecx
push dword [ebp + 8]
mov ecx, edi
call fcn.1004bef9
neg eax
sbb eax, eax
neg eax
call fcn.1005fe7b
ret 0x18
push 4
push dword [edi + 0x84]
lea ecx, [edi - 0x18]
call fcn.1002f713
lea ecx, [edi - 0x18]
mov edx, dword [ecx]
lea eax, [ecx + 0x5c]
push eax
call dword [edx + 0x24]
test byte [edi + 0x88], 0x10
je 0x10036897
cmp dword [edi + 0x120], 0xffffffff
jne 0x10036897
push 0x10
call dword [sym.imp.USER32.dll_GetKeyState]
mov ecx, 0x8000
test cx, ax
jne 0x1003691a
push 0x26
call dword [sym.imp.USER32.dll_GetKeyState]
mov ecx, 0x8000
test cx, ax
jne 0x1003691a
xor eax, eax
jmp 0x1003692d
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
dec eax
lea ecx, [edi - 0x18]
test ecx, ecx
je 0x10036897
push 0
push eax
push 0x186
push ecx
call sym.WCLDll.dll_wclSendMessage
add esp, 0x10
jmp 0x10036897
mov dword [ebp - 0x2a0], eax
lea eax, [edi + 0x110]
mov dword [ebp - 0x2a8], eax
lea ecx, [ebp - 0x2a8]
mov eax, dword [eax]
mov dword [ebp - 0x2a4], eax
push dword [ebp - 0x2a4]
call fcn.10056f2d
or dword [edi + 0x120], 0xffffffff
lea ecx, [edi - 0x18]
call fcn.10023fb8
mov eax, dword [ebp - 0x2a0]
jmp 0x100373f4
or ecx, 0xffffffff
cmp word [edi + 0x130], cx
jne 0x100369b6
push ecx
mov eax, esp
lea ecx, [edi - 0x18]
mov dword [eax], ecx
call fcn.100366c6
mov word [edi + 0x130], ax
xor eax, eax
pop ecx
or dword [edi + 0x40], 0x40000000
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], cx
mov dword [ebp - 4], eax
lea ecx, [edi + 0xec]
lea eax, [ebp - 0x28]
push eax
call fcn.1004e3db
xor eax, eax
mov dword [ebp - 0x2c], 7
xor ecx, ecx
mov dword [ebp - 0x30], eax
mov word [ebp - 0x40], cx
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 1
push ecx
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10056224
mov dword [ebp - 0x2a0], eax
test eax, eax
je 0x10036a72
mov ebx, eax
lea ecx, [ebp - 0x40]
call fcn.10050063
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x2bc]
call fcn.10035a54
lea eax, [ebp - 0x2bc]
mov byte [ebp - 4], 2
push eax
lea ecx, [edi - 0x18]
call fcn.100376f7
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x2b8]
test ecx, ecx
je 0x10036a54
and dword [ebp - 0x2b8], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 1
push eax
push ecx
push ebx
lea ecx, [ebp - 0x28]
call fcn.10056224
mov ebx, eax
test ebx, ebx
jne 0x10036a0f
mov ebx, dword [ebp - 0x2a4]
and dword [edi + 0x40], 0xbfffffff
lea ecx, [ebp - 0x40]
call fcn.10052bca
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.10052bca
jmp 0x10036897
lea ecx, [edi - 0x18]
push ebx
call fcn.10037844
jmp 0x100367e1
sub ecx, 0x183
je 0x10036bbe
sub ecx, 1
je 0x10036954
sub ecx, 1
je 0x10036b4c
sub ecx, 1
je 0x10036b3b
sub ecx, 1
je 0x10036afe
sub ecx, 1
jne 0x10036897
mov ecx, dword [edi + 0x120]
test ecx, ecx
js 0x10036af4
mov edi, dword [edi + 0x110]
imul ebx, ecx, 0x14
cmp dword [ebx + edi + 8], eax
je 0x10036af4
test edx, edx
je 0x10036af7
cmp dword [ebx + edi + 0xc], eax
jne 0x10036af7
or ecx, 0xffffffff
mov dword [esi], ecx
jmp 0x100373fc
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
cmp ebx, eax
jae 0x10036b37
cmp dword [ebp - 0x298], 0
mov edx, dword [edi + 0x110]
je 0x10036b2e
imul eax, ebx, 0x14
xor ecx, ecx
cmp dword [eax + edx + 0xc], ecx
je 0x10036af7
imul eax, ebx, 0x14
mov ecx, dword [eax + edx + 8]
jmp 0x10036af7
xor ecx, ecx
jmp 0x10036af7
push eax
push eax
push eax
lea ecx, [edi - 0x18]
push ebx
call fcn.10036122
jmp 0x100367e1
or eax, 0xffffffff
cmp edx, eax
jne 0x10036b6b
mov eax, dword [edi + 0x110]
jmp 0x10036b61
mov dword [eax + 8], ebx
add eax, 0x14
cmp dword [edi + 0x114], eax
jne 0x10036b5b
jmp 0x10036b9c
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
pop ecx
cdq
idiv ecx
mov ecx, dword [ebp - 0x298]
cmp ecx, eax
jl 0x10036b8f
or dword [esi], 0xffffffff
jmp 0x100373fc
imul eax, ecx, 0x14
mov ecx, dword [edi + 0x110]
mov dword [eax + ecx + 8], ebx
lea esi, [edi - 0x18]
push 1
push dword [esi + 0x9c]
mov ecx, esi
call fcn.1002f713
mov edx, dword [esi]
lea eax, [esi + 0x5c]
mov ecx, esi
push eax
call dword [edx + 0x24]
jmp 0x100373fc
lea ecx, [edi - 0x18]
cmp ebx, edx
jae 0x10036bd3
push edx
push ebx
push 1
call fcn.10037a95
jmp 0x100367e1
push ebx
push edx
push eax
jmp 0x10036bc9
test edx, edx
je 0x10036b87
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
cmp ebx, eax
jae 0x10036b87
imul ecx, ebx, 0x14
lea eax, [ebp - 0x28]
push eax
add ecx, dword [edi + 0x110]
call fcn.10035ae1
mov eax, dword [ebp - 0x18]
mov dword [esi], eax
test eax, eax
je 0x10036c2c
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
mov ecx, dword [ebp - 0x298]
cmovae eax, dword [ebp - 0x28]
push 0xffffffffffffffff
push eax
push 0xfffffffffffffffe
pop edx
call fcn.1005961b
add esp, 8
lea ecx, [ebp - 0x28]
call fcn.10052bca
jmp 0x100373fc
lea esi, [ecx - 0x18a]
cmp esi, 0x11
mov esi, dword [ebp - 0x29c]
ja case.0x10036fed.419
lea edx, [ecx - 0x18a]
jmp dword [edx*4 + 0x10037404]
push eax
push 1
mov edx, dword [ebp - 0x298]
lea ecx, [edi - 0x18]
push edx
push ebx
call fcn.100378d6
jmp 0x100367e1
push eax
push eax
jmp 0x10036c5e
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
cmp ebx, eax
jb 0x10036c94
or eax, 0xffffffff
xor ecx, ecx
jmp 0x10036cac
imul ecx, ebx, 0x14
lea eax, [ebp - 0x28]
push eax
add ecx, dword [edi + 0x110]
call fcn.10035ae1
xor ecx, ecx
inc ecx
mov eax, dword [eax + 0x10]
mov dword [esi], eax
test cl, 1
je 0x100373fc
jmp 0x10036c2c
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
jmp 0x100367e1
mov eax, dword [edi + 0x114]
mov ecx, dword [edi + 0x110]
sub eax, ecx
push 0x14
cdq
pop edi
idiv edi
cmp ebx, eax
jb 0x10036cf3
or eax, 0xffffffff
jmp 0x100367e1
imul eax, ebx, 0x14
mov eax, dword [eax + ecx]
jmp 0x100367e1
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
cmp ebx, eax
jae 0x10036b87
mov edx, dword [edi + 0x110]
mov ecx, dword [ebp - 0x298]
imul eax, ebx, 0x14
mov dword [eax + edx], ecx
jmp 0x100373fc
mov edx, dword [ebp - 0x298]
lea ecx, [edi - 0x18]
movzx eax, dx
push eax
shr edx, 0x10
push edx
push ebx
jmp 0x10036bc9
movsx eax, word [edi + 0x130]
movss xmm1, dword [edi + 0xc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvttss2si eax, xmm1
jmp 0x100367e1
mov edx, dword [ebp - 0x298]
lea ecx, [edi - 0x18]
test ecx, ecx
je 0x10036d86
push eax
push eax
push 0xb
push ecx
call sym.WCLDll.dll_wclSendMessage
mov edx, dword [ebp - 0x298]
add esp, 0x10
push edx
lea eax, [ebp - 0x294]
push eax
call sym.WCLDll.dll_at_fs_find_first
pop ecx
pop ecx
mov dword [ebp - 4], 6
cmp word [ebp - 0x264], 0
je 0x10036e22
test byte [ebp - 0x290], bl
je 0x10036e07
lea eax, [ebp - 0x264]
push eax
lea ecx, [ebp - 0x28]
call fcn.10050235
push eax
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 7
call fcn.10035a54
lea eax, [ebp - 0x2bc]
mov byte [ebp - 4], 8
push eax
lea ecx, [edi - 0x18]
call fcn.100376f7
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x2b8]
test ecx, ecx
je 0x10036dfb
and dword [ebp - 0x2b8], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 6
call fcn.10052bca
lea ecx, [ebp - 0x294]
call fcn.10005c5c
cmp word [ebp - 0x264], 0
jne 0x10036da6
mov esi, dword [ebp - 0x29c]
push dword [ebp - 0x294]
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [edi - 0x18]
test eax, eax
je 0x10036e44
push 0
push 1
push 0xb
push eax
call sym.WCLDll.dll_wclSendMessage
add esp, 0x10
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
dec eax
jmp 0x100367e1
test dword [edi + 0x88], 0x808
je 0x10036b87
mov dword [esi], eax
mov eax, dword [edi + 0x110]
jmp 0x10036e81
cmp dword [eax + 8], 0
je 0x10036e7e
inc dword [esi]
add eax, 0x14
cmp dword [edi + 0x114], eax
jne 0x10036e76
jmp 0x100373fc
test dword [edi + 0x88], 0x808
je 0x10036b87
mov dword [esi], eax
mov ecx, eax
mov eax, dword [edi + 0x110]
jmp 0x10036ecf
mov edx, dword [ebp - 0x298]
cmp dword [esi], ebx
jae 0x100373fc
cmp dword [eax + 8], 0
je 0x10036ecb
mov esi, dword [esi]
mov dword [edx + esi*4], ecx
mov esi, dword [ebp - 0x29c]
inc dword [esi]
add eax, 0x14
inc ecx
cmp dword [edi + 0x114], eax
jne 0x10036eaa
jmp 0x100373fc
mov edx, dword [ebp - 0x298]
lea ecx, [ebp - 0x28]
push edx
call fcn.10050235
push eax
lea ecx, [ebp - 0x2bc]
mov dword [ebp - 4], 0xa
call fcn.10035a54
lea eax, [ebp - 0x2bc]
mov byte [ebp - 4], 0xb
lea ecx, [edi - 0x18]
push eax
call fcn.100376f7
mov dword [esi], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x2b8]
test ecx, ecx
je 0x10036c2c
and dword [ebp - 0x2b8], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
jmp 0x10036c2c
movsx eax, word [edi + 0x130]
lea ecx, [edi + 4]
imul eax, ebx
xorps xmm2, xmm2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1006eb80]
cvtpd2ps xmm3, xmm0
comiss xmm2, xmm3
ja 0x10036f7a
call fcn.1005179e
movss xmm1, dword [ecx + 0x10]
subss xmm1, xmm0
maxss xmm2, xmm1
minss xmm2, xmm3
movss dword [ecx + 8], xmm2
lea ecx, [edi - 0x18]
mov edx, dword [ecx]
lea eax, [ecx + 0x5c]
jmp 0x10036bb5
mov edx, dword [ebp - 0x298]
lea ecx, [edi - 0x18]
push edx
push ebx
call fcn.100379d0
jmp 0x100367e1
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
cmp ebx, eax
jae 0x10036b87
mov dword [edi + 0x11c], ebx
jmp 0x100373fc
cmp ecx, 0x200
ja 0x100371f4
je 0x100371e5
lea esi, [ecx - 0x19d]
cmp esi, 0x16
ja case.0x10036fed.419
lea esi, [ecx - 0x19d]
jmp dword [esi*4 + 0x1003744c]
mov eax, dword [edi + 0x114]
mov ecx, dword [edi + 0x110]
sub eax, ecx
push 0x14
cdq
pop edi
idiv edi
mov esi, dword [ebp - 0x29c]
cmp ebx, eax
jae 0x1003701e
imul eax, ebx, 0x14
mov eax, dword [eax + ecx + 0xc]
jmp 0x100367e1
xor eax, eax
jmp 0x100367e1
mov esi, dword [ebp - 0x29c]
test ebx, ebx
js 0x100367e1
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
cmp ebx, eax
jae 0x1003701e
mov edx, dword [edi + 0x110]
mov ecx, dword [ebp - 0x298]
imul eax, ebx, 0x14
mov dword [eax + edx + 0xc], ecx
xor eax, eax
inc eax
jmp 0x100367e1
push 1
push eax
push edx
lea ecx, [edi - 0x18]
push ebx
call fcn.100378d6
mov esi, dword [ebp - 0x29c]
jmp 0x100367e1
mov esi, dword [ebp - 0x29c]
test edx, edx
je 0x10036b87
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
cmp ebx, eax
jae 0x10036b87
mov ecx, dword [ebp - 0x298]
lea esi, [edi - 0x18]
push ecx
imul ecx, ebx, 0x14
push esi
add ecx, dword [edi + 0x110]
call fcn.10035a91
mov ecx, dword [ebp - 0x29c]
mov dword [ecx], ebx
jmp 0x10036bae
mov eax, dword [edi + 0x11c]
jmp 0x10037071
mov eax, dword [edi + 0x114]
sub eax, dword [edi + 0x110]
push 0x14
cdq
pop ecx
idiv ecx
mov esi, dword [ebp - 0x29c]
cmp ebx, eax
jae 0x10036b87
mov dword [edi + 0x120], ebx
lea ecx, [edi - 0x18]
call fcn.10023fb8
jmp 0x100373fc
mov eax, dword [edi + 0x120]
jmp 0x10037071
mov word [edi + 0x130], dx
jmp 0x100370f8
movsx eax, word [edi + 0x130]
jmp 0x10037071
mov dword [edi + 0x104], ebx
jmp 0x100373fc
lea ecx, [edi + 0x110]
push ecx
push ebx
call fcn.100577df
jmp 0x100370f8
push edx
lea ecx, [edi - 0x18]
push ebx
call fcn.10037577
jmp 0x10037071
mov eax, dword [edi + 0x114]
add edi, 0xffffffe8
push 0x14
pop ecx
mov esi, dword [ebp - 0x29c]
sub eax, dword [edi + 0x128]
cdq
idiv ecx
cmp ebx, eax
jae 0x1003701e
mov edx, dword [edi + 0x128]
mov ecx, dword [ebp - 0x298]
imul eax, ebx, 0x14
cmp dword [eax + edx + 0x10], ecx
je 0x1003705c
push edi
push ecx
push ebx
mov ecx, edi
call fcn.100374ec
jmp 0x1003705c
push edx
lea ecx, [edi - 0x18]
push ebx
call fcn.100375c5
jmp 0x10037071
mov eax, dword [edi + 0x114]
mov ecx, dword [edi + 0x110]
sub eax, ecx
push 0x14
cdq
pop edi
idiv edi
mov esi, dword [ebp - 0x29c]
cmp ebx, eax
jae 0x1003701e
imul eax, ebx, 0x14
mov eax, dword [eax + ecx + 0x10]
jmp 0x100367e1
push edx
lea ecx, [edi - 0x18]
push ebx
call fcn.10037b45
jmp 0x100373fc
push edx
lea ecx, [edi - 0x18]
push ebx
call fcn.1003648a
jmp 0x100373fc
cmp ecx, 0x814a
ja 0x100372cb
je 0x100373ab
sub ecx, 0x201
je 0x1003729a
sub ecx, 1
je 0x100373fc
sub ecx, 1
je 0x10037285
sub ecx, 0xa4
je 0x10037276
sub ecx, 0x7e85
je 0x10037244
sub ecx, 0xd
jne 0x10036897
mov dword [edi + 0x100], edx
jmp 0x10036f7f
push eax
push esi
push edx
push ebx
push 0x812c
push dword [ebp + 8]
mov ecx, edi
call fcn.1002e0b1
mov eax, dword [ebp - 0x298]
cmp byte [eax + 0x10], 0
jne 0x100373fc
push eax
lea ecx, [edi - 0x18]
push ebx
call fcn.1003761f
jmp 0x100373fc
push edx
lea ecx, [edi - 0x18]
push ebx
call fcn.10036374
jmp 0x100373fc
lea ecx, [edi - 0x18]
push 2
push dword [ecx + 0x9c]
call fcn.1002f713
jmp 0x100373fc
test dword [edi + 0x88], 0x10000
je 0x100372ba
add edi, 0xffffffe8
push 1
mov ecx, edi
call fcn.1003048e
mov edx, dword [ebp - 0x298]
jmp 0x100372bd
add edi, 0xffffffe8
push edx
push ebx
mov ecx, edi
call fcn.100362eb
jmp 0x100373fc
mov dword [ebp - 0x2a0], ecx
sub dword [ebp - 0x2a0], 0x8151
je 0x100373ab
sub dword [ebp - 0x2a0], 0xd
je 0x10037377
sub dword [ebp - 0x2a0], 3
je 0x1003734e
sub dword [ebp - 0x2a0], 7
je 0x1003733f
sub dword [ebp - 0x2a0], 0xaa
jne case.0x10036fed.419
push eax
push esi
push edx
push ebx
push 0x8212
push dword [ebp + 8]
mov ecx, edi
call fcn.1002e0b1
push ecx
mov eax, esp
lea esi, [edi - 0x18]
mov dword [eax], esi
call fcn.100366c6
pop ecx
mov word [edi + 0x130], ax
mov ecx, esi
jmp 0x100370fb
lea ecx, [edi - 0x18]
push edx
push ecx
call fcn.100360a4
jmp 0x100373fc
cmp dword [edx + 4], 0x100
lea ecx, [edi - 0x18]
jne 0x100373f4
push ecx
mov ecx, dword [edx + 0x10]
call fcn.1002f266
test eax, eax
je 0x10036897
push dword [edx + 8]
jmp 0x1003684a
cmp dword [edx + 4], 0x201
lea eax, [edi - 0x18]
jne case.0x10036fed.419
mov ecx, dword [edx + 0x10]
push eax
call fcn.1002f266
test eax, eax
je 0x10036897
push dword [edx + 0xc]
lea ecx, [edi - 0x18]
push dword [edx + 8]
call fcn.100362eb
jmp 0x10036897
mov ecx, dword [edi + 0x110]
mov dword [ebp - 0x2a0], ecx
cmp dword [edi + 0x114], ecx
je 0x100373f4
mov esi, dword [ebp + 0xc]
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x100373e1
push 1
push edx
push ebx
push esi
mov ecx, eax
call fcn.1002f762
mov edx, dword [ebp - 0x298]
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x14
mov dword [ebp - 0x2a0], ecx
cmp dword [edi + 0x114], ecx
jne 0x100373c2
xor eax, eax
test eax, eax
je 0x10036897
xor eax, eax
inc eax
jmp 0x100368bc