Function at 0x100275d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x140
mov esi, esp
mov dword [esi + 0x128], ebp
mov dword [esi + 0x12c], esp
mov dword [esi + 0x138], 0xffffffff
mov dword [esi + 0x134], 0x100307d0
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
lea edx, [esi + 0x130]
mov edi, dword fs:[0]
mov dword [esi + 0x130], edi
lea edi, [esi + 0x48]
mov dword fs:[0], edx
push ecx
push eax
push edi
call fcn.1015f6e0
add esp, 0xc
mov ecx, dword [esi + 0x48]
test ecx, ecx
je 0x10028157
mov edx, dword [esi + 0x4c]
mov eax, dword [esi + 0x50]
mov dword [esi + 0x10c], ecx
mov dword [esi + 0x138], 1
mov dword [esi + 0x114], eax
mov dword [esi + 0x6c], edx
mov dword [esi + 0x110], edx
push eax
mov dword [esi + 0x70], ecx
push ecx
push edi
call fcn.1001b180
add esp, 0xc
cmp dword [esi + 0x48], 0
je 0x100282df
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
shl eax, 3
mov dword [esi + 0x118], ecx
mov dword [esi + 0x84], edx
mov dword [esi + 0x11c], edx
lea ebx, [ecx + 0x20]
mov dword [esi + 0x80], ecx
lea edi, [eax + eax*2]
lea eax, [eax + eax*2 - 0x18]
mov dword [esi + 0x68], eax
mov eax, dword [ebp + 8]
add edi, ecx
mov dword [esi + 0x124], edi
mov dword [esi + 0x88], edi
lea edx, [eax + 0x100]
add eax, 0xc0
mov dword [esi + 0xb8], eax
mov eax, ecx
mov dword [esi + 0xb0], edx
cmp eax, edi
je 0x10028361
lea ecx, [eax + 0x18]
mov dword [esi + 0x120], ecx
mov edx, dword [eax]
cmp edx, 2
je 0x1002830c
mov dword [esi + 0x90], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 0x94], ebx
mov edi, dword [eax + 0xc]
mov ebx, dword [eax + 0x10]
mov dword [esi + 0x14], edx
mov dword [esi + 0x24], ecx
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0x14]
mov dword [esi + 0x40], edi
mov dword [esi + 0x98], ebx
mov dword [esi + 0x38], edx
mov byte [esi + 0xa], 1
mov byte [esi + 0xb], 1
mov dword [esi + 0x138], 3
mov dword [esi + 0x30], eax
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x3c], ecx
push 0
call fcn.1016f860
add esp, 4
test eax, eax
je 0x10028429
movdqu xmm0, xmmword [eax]
movd edx, xmm0
pshufd xmm1, xmm0, 0x55
add edx, 1
movd ecx, xmm1
adc ecx, 0
cmp dword [esi + 0x14], 0
mov dword [eax], edx
mov dword [eax + 4], ecx
mov dword [esi + 0xe0], 0x101b1fa0
mov dword [esi + 0xe4], 0
mov dword [esi + 0xe8], 0
mov dword [esi + 0xec], 0
movdqu xmmword [esi + 0xf0], xmm0
je 0x10027b00
mov ecx, dword [esi + 0x40]
mov eax, dword [esi + 0x24]
shl ecx, 4
add ecx, eax
mov dword [esi + 0x40], ecx
jmp 0x100277b3
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x40]
je 0x10027ae0
mov edi, dword [eax]
test edi, edi
je 0x10027ae0
mov edx, dword [eax + 4]
mov ecx, dword [eax + 8]
mov ebx, dword [eax + 0xc]
mov dword [esi + 0xc], eax
test edx, edx
mov dword [esi + 0x34], ecx
mov dword [esi + 0x44], ebx
mov dword [esi + 0x20], edx
je 0x10027920
mov dword [esi + 0x28], edi
js 0x1002839f
push 1
push edx
mov ebx, edx
call fcn.100985b0
add esp, 8
test eax, eax
je 0x100283b3
mov edi, eax
mov dword [esi + 0x10], edi
push ebx
push dword [esi + 0x28]
push edi
call fcn.10193640
add esp, 0xc
mov eax, dword [esi + 0x10]
cmp ebx, 8
mov edx, ebx
mov ecx, eax
mov ebx, eax
jb 0x10027930
movdqa xmm5, xmmword [0x101b1090]
xor eax, eax
cmp edx, 0x20
jb 0x100278ca
movdqa xmm6, xmmword [0x101b1040]
movdqa xmm7, xmmword [0x101b1050]
movdqa xmm5, xmmword [0x101b1060]
mov eax, edx
xor ecx, ecx
and eax, 0xffffffe0
nop word [eax + eax]
movdqu xmm1, xmmword [ebx + ecx]
movdqu xmm0, xmmword [ebx + ecx + 0x10]
movdqa xmm2, xmm1
movdqa xmm3, xmm0
paddb xmm2, xmm6
paddb xmm3, xmm6
movdqa xmm4, xmm2
pminub xmm4, xmm7
pcmpeqb xmm4, xmm2
movdqa xmm2, xmm3
pminub xmm2, xmm7
pand xmm4, xmm5
pcmpeqb xmm2, xmm3
por xmm4, xmm1
pand xmm2, xmm5
movdqu xmmword [ebx + ecx], xmm4
por xmm2, xmm0
movdqu xmmword [ebx + ecx + 0x10], xmm2
add ecx, 0x20
cmp eax, ecx
jne 0x10027860
cmp edx, eax
je 0x1002795d
test dl, 0x18
je 0x10027927
movdqa xmm5, xmmword [0x101b1090]
movdqa xmm3, xmmword [0x101b1070]
movdqa xmm4, xmmword [0x101b1080]
and edx, 0xfffffff8
lea ecx, [edi + edx]
movq xmm0, qword [ebx + eax]
movdqa xmm1, xmm0
paddb xmm1, xmm3
movdqa xmm2, xmm1
pmaxub xmm2, xmm4
pcmpeqb xmm2, xmm1
pandn xmm2, xmm5
por xmm2, xmm0
movq qword [ebx + eax], xmm2
add eax, 8
cmp edx, eax
jne 0x100278e0
mov eax, dword [esi + 0x20]
cmp eax, edx
mov edx, eax
jne 0x10027930
jmp 0x1002795d
mov ebx, 1
jmp 0x10027960
add eax, edi
mov ecx, eax
nop dword [eax + eax]
add edi, edx
nop word cs:[eax + eax]
nop dword [eax]
movzx eax, byte [ecx]
mov edx, eax
add dl, 0xbf
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, al
mov byte [ecx], dl
inc ecx
cmp ecx, edi
jne 0x10027940
mov edx, dword [esi + 0x20]
mov edi, dword [esi + 0x28]
mov dword [esi + 0x74], ebx
mov dword [esi + 0x78], edx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x7c], edx
mov dword [esi + 0x138], 0xb
push edx
push edi
lea eax, [esi + 0xa0]
push eax
call fcn.10177030
add esp, 0xc
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0xa0]
mov ecx, dword [esi + 0xa4]
xor edx, edx
add edi, 0x10
test eax, eax
jne 0x100279ad
mov edx, dword [esi + 0xa8]
mov dword [esi + 0x9c], edx
mov edx, ecx
mov ebx, dword [esi + 0x10]
je 0x100279c9
test ecx, ecx
je 0x100279c9
push 1
push ecx
push eax
mov ebx, edx
call fcn.100985c0
mov edx, ebx
mov ebx, dword [esi + 0x10]
add esp, 0xc
mov eax, dword [esi + 0x20]
test edx, edx
je 0x100281a1
mov ebx, dword [esi + 0x44]
mov eax, dword [esi + 0x9c]
mov dword [esi + 0x104], edx
mov dword [esi + 0xc], edi
mov dword [esi + 0x28], edx
test ebx, ebx
mov dword [esi + 0x108], eax
je 0x10027a20
js 0x100283e7
push 1
push ebx
call fcn.100985b0
add esp, 8
mov ebx, dword [esi + 0x44]
mov edi, eax
test eax, eax
jne 0x10027a25
jmp 0x100283cd
mov edi, 1
push ebx
push dword [esi + 0x34]
push edi
call fcn.10193640
add esp, 0xc
mov eax, dword [esi + 0x28]
mov byte [esi + 0x1b], 0
mov dword [esi + 0x138], 9
mov dword [esi + 0x58], eax
mov eax, dword [esi + 0x9c]
mov dword [esi + 0x5c], eax
lea eax, [esi + 0x48]
mov dword [esi + 0x48], 2
mov dword [esi + 0x4c], edi
mov dword [esi + 0x50], ebx
mov dword [esi + 0x54], ebx
push eax
lea eax, [esi + 0x74]
push eax
lea eax, [esi + 0xe0]
push eax
lea eax, [esi + 0xc0]
push eax
call fcn.10083dc0
add esp, 0x10
mov edi, dword [esi + 0xc0]
cmp edi, 3
je 0x100277b0
mov eax, dword [esi + 0xd0]
mov byte [eax], 0
mov ecx, dword [esi + 0xd4]
test ecx, ecx
je 0x10027aab
push 1
push ecx
push eax
call fcn.100985c0
add esp, 0xc
cmp edi, 2
jb 0x100277b0
mov eax, dword [esi + 0xc8]
test eax, eax
je 0x100277b0
push 1
push eax
push dword [esi + 0xc4]
call fcn.100985c0
add esp, 0xc
jmp 0x100277b0
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x10027e1a
mov cl, 1
shl eax, 4
xor ebx, ebx
mov dword [esi + 0xc], ecx
jmp 0x10027dfa
mov eax, dword [esi + 0x40]
mov ecx, dword [esi + 0x24]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*4]
mov dword [esi + 0x28], eax
jmp 0x10027b23
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 0x28]
je 0x10027de0
mov edi, dword [ecx]
test edi, edi
je 0x10027de0
mov edx, dword [ecx + 4]
mov eax, dword [ecx + 8]
mov dword [esi + 0xc], ecx
test edx, edx
mov dword [esi + 0x10], edx
mov dword [esi + 0x44], eax
je 0x10027c90
mov dword [esi + 0x34], edi
js 0x100283fb
push 1
push edx
mov ebx, edx
call fcn.100985b0
add esp, 8
test eax, eax
je 0x1002840f
mov edi, eax
mov dword [esi + 0x20], edi
push ebx
push dword [esi + 0x34]
push edi
call fcn.10193640
add esp, 0xc
mov eax, dword [esi + 0x20]
cmp ebx, 8
mov edx, ebx
mov ecx, eax
mov ebx, eax
jb 0x10027ca0
movdqa xmm5, xmmword [0x101b1090]
xor eax, eax
cmp edx, 0x20
jb 0x10027c3a
movdqa xmm6, xmmword [0x101b1040]
movdqa xmm7, xmmword [0x101b1050]
movdqa xmm5, xmmword [0x101b1060]
mov eax, edx
xor ecx, ecx
and eax, 0xffffffe0
nop word cs:[eax + eax]
nop dword [eax + eax]
movdqu xmm1, xmmword [ebx + ecx]
movdqu xmm0, xmmword [ebx + ecx + 0x10]
movdqa xmm2, xmm1
movdqa xmm3, xmm0
paddb xmm2, xmm6
paddb xmm3, xmm6
movdqa xmm4, xmm2
pminub xmm4, xmm7
pcmpeqb xmm4, xmm2
movdqa xmm2, xmm3
pminub xmm2, xmm7
pand xmm4, xmm5
pcmpeqb xmm2, xmm3
por xmm4, xmm1
pand xmm2, xmm5
movdqu xmmword [ebx + ecx], xmm4
por xmm2, xmm0
movdqu xmmword [ebx + ecx + 0x10], xmm2
add ecx, 0x20
cmp eax, ecx
jne 0x10027bd0
cmp edx, eax
je 0x10027ccd
test dl, 0x18
je 0x10027c97
movdqa xmm5, xmmword [0x101b1090]
movdqa xmm3, xmmword [0x101b1070]
movdqa xmm4, xmmword [0x101b1080]
and edx, 0xfffffff8
lea ecx, [edi + edx]
movq xmm0, qword [ebx + eax]
movdqa xmm1, xmm0
paddb xmm1, xmm3
movdqa xmm2, xmm1
pmaxub xmm2, xmm4
pcmpeqb xmm2, xmm1
pandn xmm2, xmm5
por xmm2, xmm0
movq qword [ebx + eax], xmm2
add eax, 8
cmp edx, eax
jne 0x10027c50
mov eax, dword [esi + 0x10]
cmp eax, edx
mov edx, eax
jne 0x10027ca0
jmp 0x10027ccd
mov ebx, 1
jmp 0x10027cd0
add eax, edi
mov ecx, eax
nop dword [eax + eax]
add edi, edx
nop word cs:[eax + eax]
nop dword [eax]
movzx eax, byte [ecx]
mov edx, eax
add dl, 0xbf
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, al
mov byte [ecx], dl
inc ecx
cmp ecx, edi
jne 0x10027cb0
mov edx, dword [esi + 0x10]
mov edi, dword [esi + 0x34]
mov dword [esi + 0x74], ebx
mov dword [esi + 0x78], edx
mov dword [esi + 0x20], ebx
mov dword [esi + 0x7c], edx
mov dword [esi + 0x138], 7
push edx
push edi
lea eax, [esi + 0xa0]
push eax
call fcn.10177030
add esp, 0xc
mov eax, dword [esi + 0xa0]
mov ecx, dword [esi + 0xa4]
add dword [esi + 0xc], 0xc
xor edi, edi
test eax, eax
jne 0x10027d1b
mov edx, dword [esi + 0xa8]
mov edi, ecx
mov dword [esi + 0xbc], edx
mov ebx, dword [esi + 0x1c]
je 0x10027d30
test ecx, ecx
je 0x10027d30
push 1
push ecx
push eax
call fcn.100985c0
add esp, 0xc
mov eax, dword [esi + 0x10]
test edi, edi
je 0x100281cb
mov eax, dword [esi + 0xbc]
mov dword [esi + 0x58], edi
mov dword [esi + 0x138], 6
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x44]
mov dword [esi + 0x48], 0
mov dword [esi + 0x4c], eax
lea eax, [esi + 0x48]
push eax
lea eax, [esi + 0x74]
push eax
lea eax, [esi + 0xe0]
push eax
lea eax, [esi + 0xc0]
push eax
call fcn.10083dc0
add esp, 0x10
mov edi, dword [esi + 0xc0]
cmp edi, 3
je 0x10027b20
mov eax, dword [esi + 0xd0]
mov byte [eax], 0
mov ecx, dword [esi + 0xd4]
test ecx, ecx
je 0x10027daa
push 1
push ecx
push eax
call fcn.100985c0
add esp, 0xc
cmp edi, 2
jb 0x10027b20
mov eax, dword [esi + 0xc8]
test eax, eax
je 0x10027b20
push 1
push eax
push dword [esi + 0xc4]
call fcn.100985c0
add esp, 0xc
jmp 0x10027b20
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x10027e20
lea eax, [eax*4]
mov bl, 1
mov dword [esi + 0xc], 0
lea eax, [eax + eax*2]
lea edi, [esi + 0x48]
push 4
push eax
push dword [esi + 0x24]
call fcn.100985c0
add esp, 0xc
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x138], 4
jmp 0x10027e27
mov cl, 1
xor ebx, ebx
jmp 0x10027e24
mov bl, 1
xor ecx, ecx
lea edi, [esi + 0x48]
mov eax, dword [esi + 0x14]
mov byte [esi + 7], 1
mov dword [esi + 0xc], ecx
mov byte [esi + 8], cl
mov dword [esi + 0x10], ebx
mov byte [esi + 9], bl
mov dword [esi + 0x138], 4
mov dword [esi + 0x2c], eax
push dword [esi + 0x30]
push dword [esi + 0x98]
push edi
call fcn.10177030
add esp, 0xc
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x4c]
xor edx, edx
test eax, eax
jne 0x10027e70
mov edx, dword [esi + 0x50]
mov dword [esi + 0xb4], edx
mov edx, ecx
mov ebx, dword [esi + 0x1c]
mov edi, dword [esi + 0x8c]
mov dword [esi + 0x20], edx
je 0x10027e91
test ecx, ecx
je 0x10027e91
push 1
push ecx
push eax
call fcn.100985c0
mov edx, dword [esi + 0x20]
add esp, 0xc
test edx, edx
cmovne edi, dword [esi + 0xb4]
je 0x10028216
mov dword [esi + 0x48], edx
mov edx, dword [ebp + 8]
mov dword [esi + 0x4c], edi
mov dword [esi + 0x8c], edi
mov eax, dword [edx + 0x108]
cmp eax, dword [edx + 0x104]
jne 0x10027ee5
mov dword [esi + 0x138], 5
push eax
push dword [esi + 0xb0]
call fcn.100062f0
add esp, 8
mov edx, dword [ebp + 8]
mov edi, dword [esi + 0x8c]
mov eax, dword [edx + 0x108]
mov ecx, dword [edx + 0x100]
mov ebx, dword [esi + 0x20]
mov dword [ecx + eax*8], ebx
mov dword [ecx + eax*8 + 4], edi
inc dword [edx + 0x108]
mov edx, dword [esi + 0x30]
test edx, edx
je 0x10028040
js 0x1002845c
push 1
push edx
call fcn.100985b0
add esp, 8
test eax, eax
je 0x10028483
mov edi, eax
mov ebx, eax
push dword [esi + 0x30]
push dword [esi + 0x98]
push edi
call fcn.10193640
add esp, 0xc
mov edx, dword [esi + 0x30]
mov ecx, edi
cmp edx, 8
jb 0x10028050
movdqa xmm5, xmmword [0x101b1090]
xor eax, eax
cmp edx, 0x20
jb 0x10027fe6
movdqa xmm6, xmmword [0x101b1040]
movdqa xmm7, xmmword [0x101b1050]
movdqa xmm5, xmmword [0x101b1060]
mov eax, edx
xor ecx, ecx
and eax, 0xffffffe0
nop word cs:[eax + eax]
nop
movdqu xmm1, xmmword [ebx + ecx]
movdqu xmm0, xmmword [ebx + ecx + 0x10]
movdqa xmm2, xmm1
movdqa xmm3, xmm0
paddb xmm2, xmm6
paddb xmm3, xmm6
movdqa xmm4, xmm2
pminub xmm4, xmm7
pcmpeqb xmm4, xmm2
movdqa xmm2, xmm3
pminub xmm2, xmm7
pand xmm4, xmm5
pcmpeqb xmm2, xmm3
por xmm4, xmm1
pand xmm2, xmm5
movdqu xmmword [ebx + ecx], xmm4
por xmm2, xmm0
movdqu xmmword [ebx + ecx + 0x10], xmm2
add ecx, 0x20
cmp eax, ecx
jne 0x10027f80
cmp edx, eax
je 0x10028036
test dl, 0x18
je 0x1002804a
movdqa xmm5, xmmword [0x101b1090]
movdqa xmm3, xmmword [0x101b1070]
movdqa xmm4, xmmword [0x101b1080]
and edx, 0xfffffff8
lea ecx, [edi + edx]
nop dword [eax]
movq xmm0, qword [ebx + eax]
movdqa xmm1, xmm0
paddb xmm1, xmm3
movdqa xmm2, xmm1
pmaxub xmm2, xmm4
pcmpeqb xmm2, xmm1
pandn xmm2, xmm5
por xmm2, xmm0
movq qword [ebx + eax], xmm2
add eax, 8
cmp edx, eax
jne 0x10028000
mov eax, dword [esi + 0x30]
cmp eax, edx
mov edx, eax
jne 0x10028050
mov eax, dword [esi + 0x14]
jmp 0x10028080
mov eax, dword [esi + 0x14]
mov ebx, 1
jmp 0x10028080
add eax, edi
mov ecx, eax
nop
add edi, edx
nop word cs:[eax + eax]
nop dword [eax]
movzx eax, byte [ecx]
mov edx, eax
add dl, 0xbf
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, al
mov byte [ecx], dl
inc ecx
cmp ecx, edi
jne 0x10028060
mov eax, dword [esi + 0x14]
mov edx, dword [esi + 0x30]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0xc]
movsd xmm1, qword [esi + 0xf0]
movq xmm0, qword [esi + 0xf8]
movq xmm2, qword [esi + 0xe0]
mov dword [esi + 0xa0], ebx
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa8], edx
mov byte [esi + 7], 0
mov dword [esi + 0x138], 4
mov byte [esi + 8], al
mov eax, dword [esi + 0x10]
movsd qword [esi + 0x58], xmm1
movq xmm1, qword [esi + 0xe8]
movq qword [esi + 0x60], xmm0
movq qword [esi + 0x48], xmm2
mov byte [esi + 9], al
lea eax, [esi + 0x48]
movq qword [esi + 0x50], xmm1
push eax
lea eax, [esi + 0xa0]
push eax
push dword [esi + 0xb8]
lea eax, [esi + 0xc0]
push eax
call fcn.10084e70
add esp, 0x10
cmp dword [esi + 0xc0], 0
je 0x10028131
mov eax, dword [esi + 0x14]
mov byte [esi + 7], 0
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0xc]
mov byte [esi + 8], al
mov eax, dword [esi + 0x10]
mov byte [esi + 9], al
lea eax, [esi + 0xc0]
push eax
call fcn.10002d90
add esp, 4
mov ebx, dword [esi + 0x94]
add dword [esi + 0x68], 0xffffffe8
mov eax, dword [esi + 0x90]
mov edi, dword [esi + 0x88]
add ebx, 0x18
cmp eax, edi
jne 0x100276da
jmp 0x10028361
cmp byte [esi + 0x4c], 3
jne 0x100282f5
mov ecx, dword [esi + 0x50]
mov eax, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [ecx + 4]
mov dword [esi + 0x138], 0
push eax
call dword [ecx]
add esp, 4
mov edi, dword [esi + 0xc]
mov ecx, dword [edi + 4]
mov eax, dword [ecx + 4]
test eax, eax
je 0x10028197
push dword [ecx + 8]
push eax
push dword [edi]
call fcn.100985c0
add esp, 0xc
push 4
push 0xc
push edi
jmp 0x100282ed
test eax, eax
je 0x100281b1
push 1
push eax
push ebx
call fcn.100985c0
add esp, 0xc
mov ebx, dword [esi + 0x1c]
test ebx, ebx
je 0x10028221
mov eax, ebx
mov cl, 1
mov dword [esi + 0x10], 0
shl eax, 4
mov dword [esi + 0xc], ecx
jmp 0x100281fe
test eax, eax
je 0x100281dd
push 1
push eax
push dword [esi + 0x20]
call fcn.100985c0
add esp, 0xc
test ebx, ebx
je 0x1002822c
lea eax, [ebx*4]
mov cl, 1
mov dword [esi + 0x14], 0
mov dword [esi + 0xc], 0
lea eax, [eax + eax*2]
mov dword [esi + 0x10], ecx
push 4
push eax
push dword [esi + 0x24]
call fcn.100985c0
add esp, 0xc
mov dword [esi + 0x138], 3
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0xc]
jmp 0x10028234
mov eax, dword [esi + 0x14]
mov dl, 1
xor ebx, ebx
xor ecx, ecx
jmp 0x10028234
mov cl, 1
xor eax, eax
xor ebx, ebx
xor edx, edx
mov dword [esi + 0x38], eax
lea eax, [esi + 0xe0]
mov dword [esi + 0x3c], ebx
mov byte [esi + 0xa], dl
mov byte [esi + 0xb], cl
mov dword [esi + 0x138], 3
push eax
call fcn.10002d90
add esp, 4
mov eax, dword [esi + 0x90]
mov ebx, dword [esi + 0x94]
cmp dword [esi + 0x88], eax
je 0x100282be
mov eax, dword [esi + 0x68]
mov ecx, 0xaaaaaaab
mul ecx
mov edi, edx
shr edi, 4
jmp 0x10028297
shl eax, 4
push 4
push eax
push dword [ebx - 4]
call fcn.100985c0
add esp, 0xc
add ebx, 0x18
dec edi
je 0x100282be
cmp dword [ebx - 8], 0
je 0x100282b0
mov eax, dword [ebx]
test eax, eax
jne 0x10028280
jmp 0x10028291
mov eax, dword [ebx]
test eax, eax
je 0x10028291
shl eax, 2
lea eax, [eax + eax*2]
jmp 0x10028283
mov eax, dword [esi + 0x84]
test eax, eax
je 0x100282df
shl eax, 3
lea eax, [eax + eax*2]
push 4
push eax
push dword [esi + 0x80]
call fcn.100985c0
add esp, 0xc
mov ecx, dword [esi + 0x6c]
mov eax, dword [esi + 0x70]
test ecx, ecx
je 0x100282f5
push 1
push ecx
push eax
call fcn.100985c0
add esp, 0xc
xor eax, eax
mov ecx, dword [esi + 0x130]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
cmp edi, ecx
je 0x10028361
mov eax, dword [esi + 0x68]
mov ecx, 0xaaaaaaab
mul ecx
mov edi, edx
shr edi, 4
jmp 0x10028350
mov eax, dword [ebx]
test eax, eax
je 0x1002834a
shl eax, 2
lea eax, [eax + eax*2]
push 4
push eax
push dword [ebx - 4]
call fcn.100985c0
add esp, 0xc
add ebx, 0x18
dec edi
je 0x10028361
cmp dword [ebx - 8], 0
je 0x10028330
mov eax, dword [ebx]
test eax, eax
je 0x1002834a
shl eax, 4
jmp 0x1002833c
mov eax, dword [esi + 0x84]
test eax, eax
je 0x10028382
shl eax, 3
lea eax, [eax + eax*2]
push 4
push eax
push dword [esi + 0x80]
call fcn.100985c0
add esp, 0xc
mov ecx, dword [esi + 0x6c]
mov eax, dword [esi + 0x70]
test ecx, ecx
je 0x10028398
push 1
push ecx
push eax
call fcn.100985c0
add esp, 0xc
mov al, 1
jmp 0x100282f7
mov dword [esi + 0x138], 8
call fcn.10176df0
jmp 0x100284b0
mov dword [esi + 0x138], 8
push ebx
push 1
call fcn.101aefe0
add esp, 8
jmp 0x100284b0
mov dword [esi + 0x138], 0xa
push ebx
push 1
call fcn.101aefe0
add esp, 8
jmp 0x100284b0
mov dword [esi + 0x138], 0xa
call fcn.10176df0
jmp 0x100284b0
mov dword [esi + 0x138], 6
call fcn.10176df0
jmp 0x100284b0
mov dword [esi + 0x138], 6
push ebx
push 1
call fcn.101aefe0
add esp, 8
jmp 0x100284b0
mov eax, dword [esi + 0x14]
mov byte [esi + 0xa], 1
mov byte [esi + 0xb], 1
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x3c], eax
push 0x101b1f90
push 0x101b1e9c
lea eax, [esi + 0x48]
push eax
push 0x46
push 0x101b1ef8
call fcn.101af4e0
add esp, 0x14
jmp 0x100284b0
mov eax, dword [esi + 0x14]
mov byte [esi + 7], 1
mov dword [esi + 0x138], 4
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0xc]
mov byte [esi + 8], al
mov eax, dword [esi + 0x10]
mov byte [esi + 9], al
call fcn.10176df0
jmp 0x100284b0
mov eax, dword [esi + 0x14]
mov byte [esi + 7], 1
mov dword [esi + 0x138], 4
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0xc]
mov byte [esi + 8], al
mov eax, dword [esi + 0x10]
mov byte [esi + 9], al
push dword [esi + 0x30]
push 1
call fcn.101aefe0
add esp, 8
ud2