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

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x10e25892
push eax
mov dword fs:[0], esp
sub esp, 0x144
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x164]
mov ebp, ecx
mov ecx, dword [edi + 4]
mov eax, dword [ecx + 0x170]
test eax, eax
je 0x10b65360
mov eax, dword [ebp]
mov dword [esp + 0x28], eax
push 0x10
lea eax, [esp + 0x20]
push eax
mov dword [esp + 0x24], 0x10e7cce4
call fcn.10b27a80
mov ecx, dword [edi + 4]
mov eax, dword [ecx + 0x110]
test eax, eax
mov ebx, dword [esp + 0x170]
je 0x10b65447
mov edx, dword [ebx]
push 0x10f46d88
push 0
mov ecx, ebx
call dword [edx + 0x38]
push 1
push ebx
lea ecx, [esp + 0x5c]
call fcn.10b87f70
mov byte [esp + 0x10], 0
mov byte [esp + 0x11], 0
mov byte [esp + 0x12], 0xff
mov byte [esp + 0x13], 0xff
mov ecx, dword [esp + 0x10]
push ecx
sub esp, 0x1c
mov edi, esp
lea esi, [ebp + 0x8c]
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov dword [esp + 0x17c], 0
call fcn.10b83d20
lea ecx, [esp + 0x54]
mov dword [esp + 0x15c], 0xffffffff
call fcn.10b892c0
push 1
push ebx
lea ecx, [esp + 0x5c]
call fcn.10b87f70
mov byte [esp + 0x10], 0
mov byte [esp + 0x11], 0xff
mov byte [esp + 0x12], 0
mov byte [esp + 0x13], 0xff
mov edx, dword [esp + 0x10]
push edx
sub esp, 0x1c
mov edi, esp
lea esi, [ebp + 0xc4]
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov dword [esp + 0x17c], 1
call fcn.10b83d20
lea ecx, [esp + 0x54]
mov dword [esp + 0x15c], 0xffffffff
call fcn.10b892c0
mov edi, dword [esp + 0x164]
mov eax, dword [ebp]
mov ecx, dword [eax + 0x94]
mov edx, dword [ecx + 0x454]
mov dword [eax + 0xb8], edx
mov eax, dword [ebp]
cmp byte [eax + 0x3b], 8
jne 0x10b6565e
mov ecx, dword [eax + 0x40]
test ecx, ecx
je 0x10b6565e
mov ecx, dword [edi + 4]
mov edx, dword [ecx + 0x124]
test edx, edx
je 0x10b6548a
test byte [eax + 0x2d4], 3
jne 0x10b654b6
mov edx, dword [0x10fceeec]
test edx, edx
je 0x10b6560a
mov ecx, dword [ecx + 0x34]
test byte [ecx + 0x5ac], 2
je 0x10b6560a
mov ecx, dword [eax + 0x350]
test ch, ch
jns 0x10b6560a
push 1
push ebx
lea ecx, [esp + 0x5c]
call fcn.10b87f70
mov edx, dword [ebx]
push 0x10f46d88
push 0
mov ecx, ebx
mov dword [esp + 0x164], 2
call dword [edx + 0x38]
call fcn.109068b0
mov edx, dword [ebp]
mov ecx, dword [edx + 0x28]
test ecx, ecx
mov esi, eax
je 0x10b654fb
lea esp, [esp]
cmp ecx, esi
je 0x10b65506
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10b654f0
xor eax, eax
test esi, esi
sete al
test eax, eax
je 0x10b65512
mov byte [esp + 0x11], 0
mov byte [esp + 0x12], 0xff
jmp 0x10b6551c
mov byte [esp + 0x11], 0xff
mov byte [esp + 0x12], 0
mov ecx, dword [edx + 0x2d0]
push 0x10
push ecx
mov ecx, dword [edx + 0x2cc]
push ecx
mov byte [esp + 0x1f], 0xff
mov byte [esp + 0x1c], 0xff
mov eax, dword [esp + 0x1c]
push eax
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x60], 0
mov ecx, dword [esp + 0x60]
mov dword [eax], ecx
mov dword [esp + 0x64], 0
mov ecx, dword [esp + 0x64]
mov dword [eax + 4], ecx
sub esp, 0xc
mov dword [esp + 0x74], 0x3f800000
mov ecx, dword [esp + 0x74]
mov dword [eax + 8], ecx
mov eax, esp
mov dword [esp + 0x5c], 0
mov ecx, dword [esp + 0x5c]
mov dword [eax], ecx
mov dword [esp + 0x60], 0x3f800000
mov ecx, dword [esp + 0x60]
mov dword [eax + 4], ecx
sub esp, 0xc
mov dword [esp + 0x70], 0
mov ecx, dword [esp + 0x70]
mov dword [eax + 8], ecx
mov eax, esp
mov dword [esp + 0x50], 0x3f800000
mov ecx, dword [esp + 0x50]
mov dword [eax], ecx
mov dword [esp + 0x54], 0
mov ecx, dword [esp + 0x54]
mov dword [eax + 4], ecx
add edx, 0x148
mov dword [esp + 0x58], 0
mov ecx, dword [esp + 0x58]
mov dword [eax + 8], ecx
mov ecx, dword [edx]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [eax + 4], ecx
push ebx
lea ecx, [esp + 0x98]
mov dword [eax + 8], edx
call fcn.10b84350
lea ecx, [esp + 0x54]
mov dword [esp + 0x15c], 0xffffffff
call fcn.10b892c0
mov eax, dword [ebp]
mov eax, dword [eax + 0x254]
test eax, eax
je 0x10b6563e
mov ecx, dword [eax + 0x64]
test ecx, ecx
jle 0x10b6563e
mov ecx, dword [esp + 0x16c]
mov edx, dword [esp + 0x168]
push ebx
push ecx
push edx
push edi
push ebp
call fcn.10bf6ce0
add esp, 0x14
jmp 0x10b662c6
mov eax, dword [esp + 0x16c]
mov ecx, dword [esp + 0x168]
push ebx
push eax
push ecx
push edi
push ebp
call fcn.10bf8980
add esp, 0x14
jmp 0x10b662c6
mov esi, dword [0x110baf64]
test esi, esi
jne 0x10b65685
push 0x10e44b40
call fcn.10ab0330
add esp, 4
mov dword [0x110baf64], eax
call fcn.10aacb90
mov esi, dword [0x110baf64]
mov ecx, dword [ebp]
mov eax, dword [ecx + 0x28]
test eax, eax
je 0x10b6569b
nop
cmp eax, esi
je 0x10b656a6
mov eax, dword [eax + 0x2c]
test eax, eax
jne 0x10b65690
xor eax, eax
test esi, esi
sete al
test eax, eax
je 0x10b656b2
push ebx
push edi
call fcn.10aae2d0
jmp 0x10b661db
mov esi, dword [0x110baf18]
test esi, esi
jne 0x10b656d9
push 0x10e44b40
call fcn.10aabf60
add esp, 4
mov dword [0x110baf18], eax
call fcn.10aa7c80
mov esi, dword [0x110baf18]
mov ecx, dword [ebp]
mov eax, dword [ecx + 0x28]
test eax, eax
je 0x10b656ee
cmp eax, esi
je 0x10b656f9
mov eax, dword [eax + 0x2c]
test eax, eax
jne 0x10b656e3
xor eax, eax
test esi, esi
sete al
test eax, eax
je 0x10b6570d
mov edx, dword [esp + 0x168]
push ebx
push edx
push edi
call fcn.10aab880
jmp 0x10b661db
mov esi, dword [0x110b9668]
test esi, esi
jne 0x10b65734
push 0x10e44b40
call fcn.10aa79e0
add esp, 4
mov dword [0x110b9668], eax
call fcn.10aa5d80
mov esi, dword [0x110b9668]
mov ecx, dword [ebp]
mov eax, dword [ecx + 0x28]
test eax, eax
je 0x10b6574b
mov edi, edi
cmp eax, esi
je 0x10b65756
mov eax, dword [eax + 0x2c]
test eax, eax
jne 0x10b65740
xor eax, eax
test esi, esi
sete al
test eax, eax
je 0x10b65762
push ebx
push edi
call fcn.10aa5a20
jmp 0x10b661db
mov eax, dword [ecx]
call dword [eax + 0x1bc]
test eax, eax
je 0x10b6579b
mov ecx, dword [ebp]
mov edx, dword [ecx]
call dword [edx + 0x1bc]
mov ecx, dword [esp + 0x16c]
mov edx, dword [eax]
push ebx
push ecx
mov ecx, dword [esp + 0x170]
push ecx
push edi
push ebp
mov ecx, eax
call dword [edx + 0x1f4]
jmp 0x10b662c6
mov edx, dword [ebp]
mov al, byte [edx + 0x3b]
cmp al, 2
jne 0x10b65f9e
mov ecx, dword [edx + 0xb4]
test ecx, ecx
je 0x10b65f9e
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x124]
test ecx, ecx
je 0x10b657cd
test byte [edx + 0x2d4], 3
jne 0x10b657f9
mov ecx, dword [0x10fceeec]
test ecx, ecx
je 0x10b65950
mov eax, dword [eax + 0x34]
test byte [eax + 0x5ac], 2
je 0x10b65950
mov eax, dword [edx + 0x350]
test ah, ah
jns 0x10b65950
push 1
push ebx
lea ecx, [esp + 0x5c]
call fcn.10b87f70
mov edx, dword [ebx]
push 0x10f46d88
push 0
mov ecx, ebx
mov dword [esp + 0x164], 3
call dword [edx + 0x38]
call fcn.109068b0
mov edx, dword [ebp]
mov ecx, dword [edx + 0x28]
test ecx, ecx
mov esi, eax
je 0x10b6583b
nop
cmp ecx, esi
je 0x10b65846
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10b65830
xor eax, eax
test esi, esi
sete al
test eax, eax
je 0x10b65852
mov byte [esp + 0x11], 0
mov byte [esp + 0x12], 0xff
jmp 0x10b6585c
mov byte [esp + 0x11], 0xff
mov byte [esp + 0x12], 0
mov ecx, dword [edx + 0x2d0]
push 0x10
push ecx
mov ecx, dword [edx + 0x2cc]
push ecx
mov byte [esp + 0x1f], 0xff
mov byte [esp + 0x1c], 0xff
mov eax, dword [esp + 0x1c]
push eax
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x38], 0
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
mov dword [esp + 0x3c], 0
mov ecx, dword [esp + 0x3c]
mov dword [eax + 4], ecx
sub esp, 0xc
mov dword [esp + 0x4c], 0x3f800000
mov ecx, dword [esp + 0x4c]
mov dword [eax + 8], ecx
mov eax, esp
mov dword [esp + 0x5c], 0
mov ecx, dword [esp + 0x5c]
mov dword [eax], ecx
mov dword [esp + 0x60], 0x3f800000
mov ecx, dword [esp + 0x60]
mov dword [eax + 4], ecx
sub esp, 0xc
mov dword [esp + 0x70], 0
mov ecx, dword [esp + 0x70]
mov dword [eax + 8], ecx
mov eax, esp
mov dword [esp + 0x78], 0x3f800000
mov ecx, dword [esp + 0x78]
mov dword [eax], ecx
mov dword [esp + 0x7c], 0
mov ecx, dword [esp + 0x7c]
mov dword [eax + 4], ecx
add edx, 0x148
mov dword [esp + 0x80], 0
mov ecx, dword [esp + 0x80]
mov dword [eax + 8], ecx
mov ecx, dword [edx]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [eax + 4], ecx
push ebx
lea ecx, [esp + 0x98]
mov dword [eax + 8], edx
call fcn.10b84350
lea ecx, [esp + 0x54]
mov dword [esp + 0x15c], 0xffffffff
call fcn.10b892c0
mov ecx, dword [ebp]
mov eax, dword [ecx]
call dword [eax + 0x1b8]
test eax, eax
je 0x10b65b7b
mov ecx, dword [eax + 0x250]
test ecx, ecx
je 0x10b65b7b
test byte [eax + 0x398], 0x20
je 0x10b65b7b
mov esi, dword [ebp]
mov ecx, dword [esi + 0x25c]
mov dl, byte [esi + 0x2a9]
lea edi, [esi + 0x260]
mov dword [esp + 0x18], ecx
mov eax, edi
mov ecx, dword [eax]
mov byte [esp + 0x33], dl
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x164]
mov dword [esp + 0x34], ecx
lea ecx, [esi + 0x148]
add eax, 0x194
push ecx
push eax
mov dword [esp + 0x40], edx
call fcn.1090ca20
fstp dword [esp + 0x34]
mov edx, dword [esp + 0x34]
push edx
push 0x451c4000
call fcn.10917db0
fmul dword [0x10e5ec1c]
add esp, 0x10
fsqrt
fmul dword [esi + 0x2d0]
fmul dword [0x10e60a30]
fst dword [esp + 0x10]
fmul dword [0x10e4500c]
fld dword [esp + 0x10]
fld dword [esp + 0x10]
fmul dword [0x10ea2330]
fstp dword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
mov dword [edi], eax
fstp dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov dword [edi + 4], ecx
fstp dword [esp + 0x24]
mov edx, dword [esp + 0x24]
mov dword [edi + 8], edx
mov eax, dword [ebp]
mov dword [eax + 0x25c], 0x3f800000
mov edx, dword [ebp]
fld dword [edx + 0x150]
lea eax, [edx + 0x148]
mov ecx, eax
mov edi, dword [ecx]
mov esi, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x164]
fsub dword [ecx + 0x19c]
add ecx, 0x194
fld dword [eax + 4]
mov dword [esp + 0x48], esi
fsub dword [ecx + 4]
fld dword [eax]
fsub dword [ecx]
fstp dword [esp + 0x1c]
fld dword [edx + 0x2cc]
fmul dword [0x10e90664]
fstp dword [esp + 0x10]
fxch st(1)
fmul dword [esp + 0x10]
fstp dword [esp + 0x14]
fmul dword [esp + 0x10]
fld dword [esp + 0x1c]
fmul dword [esp + 0x10]
fld dword [0x10e45008]
fdiv dword [esp + 0x2c]
fld dword [esp + 0x14]
fmul st(1)
fstp dword [esp + 0x14]
fld st(0)
fmul st(3)
fstp dword [esp + 0x2c]
fmul st(1)
mov esi, ebx
fstp dword [esp + 0x1c]
fstp st(0)
fstp st(0)
fld dword [esp + 0x14]
fadd dword [eax + 8]
fld dword [esp + 0x2c]
fadd dword [eax + 4]
fld dword [esp + 0x1c]
fadd dword [eax]
fstp dword [esp + 0x1c]
mov edx, dword [esp + 0x1c]
mov dword [eax], edx
fstp dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov dword [eax + 4], ecx
fstp dword [esp + 0x24]
mov edx, dword [esp + 0x24]
mov dword [eax + 8], edx
mov eax, dword [ebp]
mov byte [eax + 0x2a9], 6
mov ecx, dword [ebp]
mov byte [ecx + 0x3b], 1
mov ecx, dword [esp + 0x164]
mov edx, dword [ebp]
call fcn.10b645a0
mov edx, dword [ebp]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
add edx, 0x148
mov dword [edx], edi
mov dword [edx + 4], eax
mov edi, dword [esp + 0x164]
mov dword [edx + 8], ecx
mov edx, dword [ebp]
mov ecx, dword [esp + 0x18]
mov byte [edx + 0x3b], 2
mov eax, dword [ebp]
mov dword [eax + 0x25c], ecx
mov edx, dword [ebp]
mov al, byte [esp + 0x33]
mov byte [edx + 0x2a9], al
mov ecx, dword [ebp]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
add ecx, 0x260
mov dword [ecx], edx
mov edx, dword [esp + 0x3c]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov eax, dword [ebp]
mov ecx, dword [eax + 0xb4]
mov edx, dword [ecx]
push eax
call dword [edx + 0x98]
mov ecx, dword [esp + 0x16c]
mov edx, dword [eax]
push ebx
push ecx
mov ecx, dword [esp + 0x170]
push ecx
push edi
push ebp
mov ecx, eax
call dword [edx + 0x158]
mov edx, dword [ebp]
mov eax, dword [edx + 0xb4]
push eax
call fcn.1093ccb0
xor ecx, ecx
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ecx
mov eax, dword [ebp]
mov edx, dword [eax + 0x1d8]
mov dword [esp + 0x10], ecx
je 0x10b65d1d
cmp edx, ecx
jle 0x10b662c6
nop
mov ecx, dword [eax + 0x1d4]
mov edx, dword [esp + 0x10]
mov esi, dword [ecx + edx*4]
test esi, esi
je 0x10b65cfe
mov eax, dword [esi + 0x6c]
test ah, 0x10
jne 0x10b65cfe
mov eax, dword [esi + 0x90]
test eax, eax
mov dword [esp + 0x18], eax
je 0x10b65cfe
mov dword [esi + 0x90], 0
mov eax, dword [edi]
push esi
mov ecx, edi
call dword [eax + 0x28]
test eax, eax
mov ecx, dword [esp + 0x18]
mov dword [esi + 0x90], ecx
je 0x10b65cfe
mov edx, dword [edi]
push esi
mov ecx, edi
call dword [edx + 0x2c]
test eax, eax
je 0x10b65cfe
fld dword [esi + 0x68]
fcomp dword [0x10e4500c]
fnstsw ax
test ah, 0x41
jnp 0x10b65cbd
mov ecx, dword [edi + 4]
mov eax, dword [ecx + 0x168]
test eax, eax
jne 0x10b65cbd
fld dword [esi + 0x68]
mov eax, dword [ebp]
fld dword [edi + 0x19c]
add eax, 0x148
fsub dword [eax + 8]
fld dword [edi + 0x198]
fsub dword [eax + 4]
fld dword [edi + 0x194]
fsub dword [eax]
mov eax, dword [ecx + 0x34]
fld dword [eax + 0x540]
fld st(4)
fmul st(5)
fld st(2)
fmul st(3)
fld st(4)
fmul st(5)
faddp st(1)
fld st(5)
fmul st(6)
faddp st(1)
fmul st(2)
fmul st(2)
fcompp
fstp st(0)
fstp st(0)
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 0x41
fstp st(0)
jp 0x10b65cfe
mov ecx, dword [ebp]
push esi
push ecx
mov ecx, dword [esp + 0x1c]
call fcn.10aebda0
test eax, eax
je 0x10b65cfe
test byte [esi + 0x2ac], 1
mov ecx, esi
push ebx
jne 0x10b65ced
mov edx, dword [esp + 0x170]
mov eax, dword [esp + 0x16c]
push edx
push eax
jmp 0x10b65cf1
push 0
push 0
push edi
call fcn.10a3f450
mov ecx, eax
call fcn.10b65310
mov ecx, dword [esp + 0x10]
mov eax, dword [ebp]
mov edx, dword [eax + 0x1d8]
inc ecx
cmp ecx, edx
mov dword [esp + 0x10], ecx
jl 0x10b65be0
jmp 0x10b662c6
cmp edx, ecx
jle 0x10b662c6
mov edi, dword [esp + 0x10]
lea esp, [esp]
mov ecx, dword [eax + 0x1d4]
mov ebx, dword [ecx + edi*4]
mov ecx, dword [ebx + 0x90]
xor esi, esi
test ecx, ecx
je 0x10b65f75
mov ecx, dword [eax + 0xb4]
mov edx, dword [ecx]
push eax
call dword [edx + 0x98]
mov edx, dword [eax]
lea ecx, [esp + 0xb4]
push ecx
mov ecx, dword [ebx + 0x90]
push ecx
mov ecx, eax
call dword [edx + 0x114]
test eax, eax
je 0x10b65f14
lea edx, [ebx + 0x1ec]
push edx
lea eax, [esp + 0x88]
push eax
mov ecx, 0x10fd11e0
call fcn.109396a0
push eax
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x12c]
push edx
lea ecx, [esp + 0xc0]
call fcn.10b5ff30
mov ecx, eax
call fcn.10939350
test byte [ebx + 0x2d4], 1
je 0x10b65dd2
mov eax, dword [ebx + 0x98]
mov ecx, dword [eax + 0xf0]
test ecx, ecx
je 0x10b65dd2
mov eax, dword [ecx]
push ebx
call dword [eax + 0xc]
fld dword [ebx + 0x1e8]
mov ecx, dword [ebx + 0x1e0]
fld dword [ebx + 0x1e4]
lea edx, [esp + 0x34]
fstp dword [esp + 0x38]
lea eax, [esp + 0xb4]
mov dword [esp + 0x34], ecx
fstp dword [esp + 0x3c]
mov dword [esp + 0x40], 0x3f800000
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], eax
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
lea edi, [esp + 0x44]
fld dword [esi]
fmul dword [edx]
fld dword [esi]
fmul dword [edx + 4]
fld dword [esi]
fmul dword [edx + 8]
fld dword [esi]
fmul dword [edx + 0xc]
fld dword [esi + 4]
fmul dword [edx + 0x10]
fld dword [esi + 4]
fmul dword [edx + 0x14]
fld dword [esi + 4]
fmul dword [edx + 0x18]
fld dword [esi + 4]
fmul dword [edx + 0x1c]
fxch st(3)
faddp st(7)
faddp st(4)
faddp st(4)
faddp st(1)
fld dword [esi + 8]
fmul dword [edx + 0x20]
fld dword [esi + 8]
fmul dword [edx + 0x24]
fld dword [esi + 8]
fmul dword [edx + 0x28]
fld dword [esi + 8]
fmul dword [edx + 0x2c]
fxch st(3)
faddp st(7)
faddp st(4)
faddp st(4)
faddp st(1)
fld dword [esi + 0xc]
fmul dword [edx + 0x30]
fld dword [esi + 0xc]
fmul dword [edx + 0x34]
fld dword [esi + 0xc]
fmul dword [edx + 0x38]
fld dword [esi + 0xc]
fmul dword [edx + 0x3c]
fxch st(3)
faddp st(7)
faddp st(4)
faddp st(4)
faddp st(1)
fxch st(3)
fstp dword [edi]
fxch st(1)
fstp dword [edi + 4]
fstp dword [edi + 8]
fstp dword [edi + 0xc]
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
lea ecx, [ebx + 0x148]
mov dword [ecx], edx
mov edx, dword [esp + 0x4c]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0xf8]
push ecx
lea ecx, [esp + 0x5c]
call fcn.10920e10
mov ecx, eax
call fcn.109fc9b0
mov ecx, dword [eax]
lea edx, [ebx + 0x154]
mov dword [edx], ecx
mov ecx, dword [eax + 4]
mov dword [edx + 4], ecx
mov eax, dword [eax + 8]
mov dword [edx + 8], eax
test byte [ebx + 0x2d4], 1
je 0x10b65f0b
mov eax, dword [ebx + 0x98]
mov ecx, dword [eax + 0xf0]
test ecx, ecx
je 0x10b65f0b
mov edx, dword [ecx]
push ebx
call dword [edx + 8]
mov edi, dword [esp + 0x10]
mov esi, 1
test esi, esi
mov eax, dword [ebx + 0x90]
mov dword [esp + 0x18], eax
mov dword [ebx + 0x90], 0
je 0x10b65f6b
mov ecx, dword [esp + 0x164]
mov edx, dword [ecx]
push ebx
call dword [edx + 0x2c]
test eax, eax
je 0x10b65f6b
mov eax, dword [esp + 0x170]
mov ecx, dword [esp + 0x16c]
mov edx, dword [esp + 0x168]
push eax
mov eax, dword [esp + 0x168]
push ecx
push edx
push eax
mov ecx, ebx
call fcn.10a3f450
mov ecx, eax
call fcn.10b65310
mov ecx, dword [esp + 0x18]
mov dword [ebx + 0x90], ecx
mov eax, dword [ebp]
mov ecx, dword [eax + 0x1d8]
inc edi
cmp edi, ecx
mov dword [esp + 0x10], edi
jl 0x10b65d30
mov ebx, dword [esp + 0x170]
mov edi, dword [esp + 0x164]
jmp 0x10b662c6
cmp al, 3
jne 0x10b65fe0
call fcn.10906df0
mov edx, dword [ebp]
mov ecx, dword [edx + 0x28]
test ecx, ecx
mov esi, eax
je 0x10b65fbe
cmp ecx, esi
je 0x10b65fc9
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10b65fb3
xor eax, eax
test esi, esi
sete al
test eax, eax
je 0x10b65fe0
mov ecx, dword [edx + 0x258]
test ecx, ecx
je 0x10b65fe0
push ebx
push edi
push ebp
call fcn.10a302b0
jmp 0x10b662c6
mov al, byte [edx + 0x3b]
cmp al, 1
jne 0x10b661b8
mov ecx, dword [edx + 0x250]
test ecx, ecx
je 0x10b661b8
mov ecx, dword [edi + 4]
mov ecx, dword [ecx + 0x34]
cmp dword [ecx + 0x5b8], 0x1e
je 0x10b661b8
mov esi, ebx
mov ecx, edi
call fcn.10b645a0
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x124]
test ecx, ecx
je 0x10b6602e
mov edx, dword [ebp]
test byte [edx + 0x2d4], 3
jne 0x10b6605d
mov ecx, dword [0x10fceeec]
test ecx, ecx
je 0x10b662c6
mov eax, dword [eax + 0x34]
test byte [eax + 0x5ac], 2
je 0x10b662c6
mov ecx, dword [ebp]
mov eax, dword [ecx + 0x350]
test ah, ah
jns 0x10b662c6
push 1
push ebx
lea ecx, [esp + 0x5c]
call fcn.10b87f70
mov edx, dword [ebx]
push 0x10f46d88
push 0
mov ecx, ebx
mov dword [esp + 0x164], 4
call dword [edx + 0x38]
call fcn.109068b0
mov edx, dword [ebp]
mov ecx, dword [edx + 0x28]
test ecx, ecx
mov esi, eax
je 0x10b6609e
cmp ecx, esi
je 0x10b660a9
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10b66093
xor eax, eax
test esi, esi
sete al
test eax, eax
je 0x10b660b5
mov byte [esp + 0x11], 0
mov byte [esp + 0x12], 0xff
jmp 0x10b660bf
mov byte [esp + 0x11], 0xff
mov byte [esp + 0x12], 0
mov ecx, dword [edx + 0x2d0]
push 0x10
push ecx
mov ecx, dword [edx + 0x2cc]
push ecx
mov byte [esp + 0x1f], 0xff
mov byte [esp + 0x1c], 0xff
mov eax, dword [esp + 0x1c]
push eax
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x38], 0
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
mov dword [esp + 0x3c], 0
mov ecx, dword [esp + 0x3c]
mov dword [eax + 4], ecx
sub esp, 0xc
mov dword [esp + 0x4c], 0x3f800000
mov ecx, dword [esp + 0x4c]
mov dword [eax + 8], ecx
mov eax, esp
mov dword [esp + 0x5c], 0
mov ecx, dword [esp + 0x5c]
mov dword [eax], ecx
mov dword [esp + 0x60], 0x3f800000
mov ecx, dword [esp + 0x60]
mov dword [eax + 4], ecx
sub esp, 0xc
mov dword [esp + 0x70], 0
mov ecx, dword [esp + 0x70]
mov dword [eax + 8], ecx
mov eax, esp
mov dword [esp + 0x78], 0x3f800000
mov ecx, dword [esp + 0x78]
mov dword [eax], ecx
mov dword [esp + 0x7c], 0
mov ecx, dword [esp + 0x7c]
mov dword [eax + 4], ecx
add edx, 0x148
mov dword [esp + 0x80], 0
mov ecx, dword [esp + 0x80]
mov dword [eax + 8], ecx
mov ecx, dword [edx]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [eax + 4], ecx
push ebx
lea ecx, [esp + 0x98]
mov dword [eax + 8], edx
call fcn.10b84350
lea ecx, [esp + 0x54]
mov dword [esp + 0x15c], 0xffffffff
call fcn.10b892c0
jmp 0x10b662c6
cmp al, 0xa
jne 0x10b66213
push edx
call fcn.10a1b010
add esp, 4
test eax, eax
je 0x10b66207
mov ecx, dword [esp + 0x168]
push ebx
push ecx
push edi
push ebp
mov ecx, eax
call fcn.10a90300
mov eax, dword [0x10fceeec]
test eax, eax
je 0x10b662c6
mov edx, dword [ebp]
mov eax, dword [edx + 0x250]
test eax, eax
je 0x10b662c6
mov esi, ebx
mov ecx, edi
call fcn.10b645a0
jmp 0x10b662c6
mov edx, dword [ebp]
mov byte [edx + 0x3b], 0
jmp 0x10b662c6
cmp al, 0xc
jne 0x10b6625b
call fcn.10908e90
mov edx, dword [ebp]
mov ecx, dword [edx + 0x28]
test ecx, ecx
mov esi, eax
je 0x10b66233
cmp ecx, esi
je 0x10b6623e
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10b66228
xor eax, eax
test esi, esi
sete al
test eax, eax
je 0x10b6625b
mov eax, dword [esp + 0x168]
push ebx
push eax
push edi
push ebp
push edx
call fcn.1097f780
add esp, 4
mov ecx, eax
call fcn.10aa13f0
jmp 0x10b662c6
cmp byte [edx + 0x3b], 0xd
jne 0x10b662c6
call fcn.10905fb0
mov esi, dword [ebp]
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10b6627b
cmp ecx, eax
je 0x10b66288
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10b66270
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
test eax, eax
je 0x10b662c6
push esi
call fcn.10b615f0
mov cl, byte [eax + 0x3d8]
add esp, 4
test cl, 1
jne 0x10b662a8
mov edx, dword [ebp]
mov esi, ebx
mov ecx, edi
call fcn.10b645a0
mov edx, dword [esp + 0x168]
mov eax, dword [ebp]
push ebx
push edx
push edi
push ebp
push eax
call fcn.10b615f0
add esp, 4
mov ecx, eax
call fcn.10a56e10
mov eax, dword [ebp]
cmp byte [eax + 0x3b], 0xb
jne 0x10b6646a
mov ecx, dword [eax + 0x29c]
test ecx, ecx
je 0x10b6646a
mov eax, dword [0x10fceeec]
test eax, eax
je 0x10b66300
mov ecx, dword [edi + 4]
mov edx, dword [ecx + 0x34]
mov eax, dword [edx + 0x5ac]
test ah, 8
je 0x10b66316
jmp 0x10b66473
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x34]
test dword [ecx + 0x5ac], 0x800000
je 0x10b66481
push 0
push ebx
lea ecx, [esp + 0x8c]
call fcn.10b87f70
mov edx, dword [ebp]
mov eax, dword [edx + 0x350]
test ah, ah
mov dword [esp + 0x15c], 5
mov byte [esp + 0x13], 0xff
mov byte [esp + 0x10], 0
lea eax, [esp + 0x10]
jns 0x10b66357
mov byte [esp + 0x11], 0x80
mov byte [esp + 0x12], 0xff
jmp 0x10b66361
mov byte [esp + 0x11], 0x40
mov byte [esp + 0x12], 0x80
mov eax, dword [eax]
mov edx, dword [ebx]
mov dword [esp + 0x18], eax
lea eax, [ebp + 8]
push eax
push 0
mov ecx, ebx
call dword [edx + 0x38]
mov ecx, dword [ebp]
mov eax, dword [ecx + 0x29c]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
mov dword [esp + 0x14], 0
jle 0x10b66445
mov dword [esp + 0x2c], 0
jmp 0x10b663a0
mov esi, dword [eax + 0x58]
mov edi, dword [esp + 0x2c]
mov ecx, dword [esi + edi + 0x14]
add esi, edi
xor eax, eax
test ecx, ecx
jle 0x10b6641d
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x18]
lea edi, [eax + 1]
push edx
mov eax, edi
cdq
idiv ecx
mov ebx, dword [esi + 0x10]
sub esp, 0xc
lea eax, [edx + edx*2]
lea ecx, [ebx + eax*4]
mov eax, dword [ecx]
mov edx, esp
mov dword [edx], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [edx + 4], eax
mov dword [edx + 8], ecx
mov edx, dword [esp + 0x20]
add ebx, edx
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [ebx + 8]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
lea ecx, [esp + 0xa0]
call fcn.10b83900
mov ecx, dword [esi + 0x14]
mov eax, edi
mov edi, dword [esp + 0x10]
add edi, 0xc
cmp eax, ecx
mov dword [esp + 0x10], edi
jl 0x10b663b7
mov edx, dword [ebp]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x2c]
mov eax, dword [edx + 0x29c]
mov edx, dword [eax + 0x5c]
inc ecx
add esi, 0x1c
cmp ecx, edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x2c], esi
jl 0x10b663a0
lea ecx, [esp + 0x84]
mov dword [esp + 0x15c], 0xffffffff
call fcn.10b892c0
mov ebx, dword [esp + 0x170]
mov edi, dword [esp + 0x164]
mov eax, dword [0x10fceeec]
test eax, eax
je 0x10b66481
mov ecx, dword [ebp]
mov eax, dword [ecx]
push ebp
push ebx
push edi
call dword [eax + 0x10c]
mov eax, dword [0x110b8f84]
test eax, eax
jne 0x10b664a6
push 0x10e44b40
call fcn.10a458d0
add esp, 4
mov dword [0x110b8f84], eax
call fcn.10a3aba0
mov eax, dword [0x110b8f84]
mov ecx, dword [eax + 0x4f0]
test ecx, ecx
mov esi, eax
jne 0x10b664c9
push 0x214
push str.d:kingsoft_svn_foxprogram_branchescambodia_tftenginecoreincUnClass.h
push str.Defaults.Num__
call fcn.109bb190
add esp, 0xc
mov eax, dword [esi + 0x4ec]
mov edx, dword [edi]
push eax
mov ecx, edi
call dword [edx + 0x2c]
test eax, eax
je 0x10b664eb
mov ebp, dword [ebp]
mov edx, dword [ebp]
push ebx
push edi
mov ecx, ebp
call dword [edx + 0x1b0]
mov edi, dword [edi + 4]
mov eax, dword [edi + 0x170]
test eax, eax
je 0x10b66501
push 0
mov ecx, edi
call fcn.10b27ae0
mov ecx, dword [esp + 0x154]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x150
ret 0x10