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

Disassembly:
mov ax, word [esp + 0x10]
sub esp, 0x20c
movsx ecx, ax
test ax, ax
push ebx
mov dword [esp + 0x10], ecx
push esi
lea esi, [esp + 0x94]
push edi
push ebp
je 0x100084c1
lea esi, [esp + 0x1c]
mov eax, dword [esp + 0x220]
mov edi, eax
mov ecx, 0x20
rep movsd dword es:[edi], dword [esi]
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x20c
ret
mov eax, dword [esp + 0x234]
xor edi, edi
mov edx, dword [esp + 0x224]
mov dword [eax], 0
mov eax, edi
mov ecx, edi
sar eax, 3
and cl, 7
inc edi
mov al, byte [eax + edx]
shr al, cl
and ax, 1
cmp edi, 0xc0
mov word [esp + edi*2 + 0x9a], ax
jl 0x100084d7
xor edi, edi
xor ecx, ecx
movsx eax, word [esi]
shl eax, cl
add edi, eax
add esi, 2
inc ecx
cmp ecx, 2
jl 0x100084ff
cmp di, 3
jne 0x10008549
mov eax, dword [esp + 0x228]
lea esi, [esp + 0x1c]
mov dword [esp + 0x20], 0
mov ecx, 0x20
mov dword [eax], 0
mov eax, dword [esp + 0x220]
pop ebp
mov edi, eax
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
add esp, 0x20c
ret
xor eax, eax
xor ecx, ecx
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 0x18
jl 0x1000854d
cmp di, 2
mov dword [esp + 0x20], eax
jne 0x100085ae
xor eax, eax
xor ecx, ecx
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 6
jl 0x1000856b
mov ecx, dword [esp + 0x228]
lea esi, [esp + 0x1c]
movsx eax, ax
mov dword [esp + 0x34], eax
mov dword [ecx], 2
mov eax, dword [esp + 0x220]
mov ecx, 0x20
mov edi, eax
pop ebp
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
add esp, 0x20c
ret
mov eax, dword [esp + 0x228]
xor ecx, ecx
mov dword [eax], 1
xor eax, eax
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 7
jl 0x100085bf
cmp eax, 0x7b
jg 0x1000896f
movsx eax, ax
add eax, 0x12
xor ecx, ecx
mov dword [esp + 0x24], eax
xor eax, eax
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 2
jl 0x100085e6
movsx eax, ax
xor ecx, ecx
mov dword [esp + 0x48], eax
xor eax, eax
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 7
jl 0x10008601
cmp eax, 0x7b
jg 0x1000893b
movsx eax, ax
add eax, 0x12
xor ecx, ecx
mov dword [esp + 0x28], eax
xor eax, eax
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 2
jl 0x10008628
mov dword [esp + 0x10], 0
movsx eax, ax
lea ebx, [esp + 0x3c]
mov dword [esp + 0x80], eax
mov eax, 1
mov dword [esp + 0x2c], eax
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x230]
mov ecx, dword [eax]
mov dword [esp + 0x14], ecx
xor ebp, ebp
xor ecx, ecx
movsx eax, word [esi]
shl eax, cl
add ebp, eax
add esi, 2
inc ecx
cmp ecx, 0xc
jl 0x1000866c
mov cx, 0xaa
mov eax, dword [esp + 0x14]
mov dword [ebx], 0
test eax, eax
jne 0x100086b2
mov eax, dword [esp + 0x10]
and eax, 0xfffffffe
mov edx, dword [esp + eax*2 + 0x24]
cmp edx, 0x3a
jge 0x100086b2
mov eax, ebp
and ebp, 0x7ff
sar eax, 0xb
movsx ecx, ax
mov dword [ebx], ecx
mov cx, 0x55
mov dword [esp + 0x18], 0x18
mov eax, ebp
cdq
idiv dword [esp + 0x18]
movsx edx, ax
movsx eax, cx
mov dword [ebx - 0xc], edx
cmp eax, edx
jle 0x10008762
mov ecx, 0x18
mov eax, ebp
cdq
idiv ecx
movsx eax, dx
mov dword [ebx - 8], eax
add ebx, 0x1c
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0xac]
inc ecx
cmp ebx, eax
mov dword [esp + 0x10], ecx
jb 0x10008668
lea ecx, [esp + 0x38]
add esi, 2
add ecx, 0x1c
movsx eax, word [esi - 2]
mov dword [ecx - 0x1c], eax
lea eax, [esp + 0xa8]
cmp ecx, eax
jb 0x10008701
mov eax, dword [esp + 0x230]
cmp dword [eax], 0
jne 0x10008907
test di, di
je 0x10008796
mov eax, dword [esp + 0x234]
lea esi, [esp + 0x1c]
mov dword [esp + 0x1c], 1
mov ecx, 0x20
mov dword [eax], 2
mov eax, dword [esp + 0x220]
pop ebp
mov edi, eax
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
add esp, 0x20c
ret
mov eax, dword [esp + 0x234]
lea esi, [esp + 0x1c]
mov dword [esp + 0x1c], 1
mov ecx, 0x20
mov dword [eax], 3
mov eax, dword [esp + 0x220]
pop ebp
mov edi, eax
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
add esp, 0x20c
ret
add esi, 2
xor edi, edi
xor ecx, ecx
movsx eax, word [esi]
shl eax, cl
add edi, eax
add esi, 2
inc ecx
cmp ecx, 0xd
jl 0x1000879d
mov ecx, 0x5a
mov eax, edi
cdq
idiv ecx
mov ebx, eax
mov ebp, 9
cdq
idiv ebp
mov dword [esp + 0x44], eax
mov eax, ebx
cdq
idiv ebp
mov ebx, 0x5a
mov eax, edi
mov dword [esp + 0x60], edx
cdq
idiv ebx
mov eax, edx
mov edi, edx
cdq
idiv ebp
xor ecx, ecx
mov dword [esp + 0x7c], eax
mov eax, edi
cdq
idiv ebp
mov dword [esp + 0x98], edx
xor edx, edx
movsx eax, word [esi]
shl eax, cl
add edx, eax
add esi, 2
inc ecx
cmp ecx, 0x10
jl 0x100087f3
mov eax, dword [esp + 0x44]
xor ecx, ecx
shl eax, 0x10
add eax, edx
xor edx, edx
mov dword [esp + 0x44], eax
movsx eax, word [esi]
shl eax, cl
add edx, eax
add esi, 2
inc ecx
cmp ecx, 0xe
jl 0x10008814
mov eax, dword [esp + 0x60]
xor ecx, ecx
shl eax, 0xe
add eax, edx
xor edx, edx
mov dword [esp + 0x60], eax
movsx eax, word [esi]
shl eax, cl
add edx, eax
add esi, 2
inc ecx
cmp ecx, 0x10
jl 0x10008835
mov eax, dword [esp + 0x7c]
xor ecx, ecx
shl eax, 0x10
add eax, edx
xor edx, edx
mov dword [esp + 0x7c], eax
movsx eax, word [esi]
shl eax, cl
add edx, eax
add esi, 2
inc ecx
cmp ecx, 0xe
jl 0x10008856
mov eax, dword [esp + 0x98]
xor ecx, ecx
shl eax, 0xe
add eax, edx
mov dword [esp + 0x98], eax
xor eax, eax
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 6
jl 0x1000887d
movsx eax, ax
xor ecx, ecx
mov dword [esp + 0x40], eax
xor eax, eax
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 5
jl 0x10008898
movsx eax, ax
xor ecx, ecx
mov dword [esp + 0x5c], eax
xor eax, eax
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 6
jl 0x100088b3
movsx eax, ax
xor ecx, ecx
mov dword [esp + 0x78], eax
xor eax, eax
movsx edx, word [esi]
shl edx, cl
add eax, edx
add esi, 2
inc ecx
cmp ecx, 5
jl 0x100088ce
lea esi, [esp + 0x1c]
mov ecx, 0x20
movsx eax, ax
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x220]
mov edi, eax
pop ebp
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
add esp, 0x20c
ret
mov eax, dword [esp + 0x234]
lea esi, [esp + 0x1c]
mov dword [esp + 0x1c], 1
mov ecx, 0x20
mov dword [eax], 2
mov eax, dword [esp + 0x220]
pop ebp
mov edi, eax
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
add esp, 0x20c
ret
mov eax, dword [esp + 0x234]
lea esi, [esp + 0x1c]
mov dword [esp + 0x1c], 1
mov ecx, 0x20
mov dword [eax], 3
mov eax, dword [esp + 0x220]
pop ebp
mov edi, eax
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
add esp, 0x20c
ret
mov eax, dword [esp + 0x234]
lea esi, [esp + 0x1c]
mov dword [esp + 0x1c], 1
mov ecx, 0x20
mov dword [eax], 3
mov eax, dword [esp + 0x220]
pop ebp
mov edi, eax
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
add esp, 0x20c
ret