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

Disassembly:
push 0xffffffffffffffff
push 0x1015f8b5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xe4
push ebx
push ebp
xor ebx, ebx
push esi
push edi
mov dword [esp + 0xf0], ebx
mov eax, 5
mov edi, 1
mov word [esp + 0x48], ax
mov word [esp + 0x4a], ax
mov al, byte [0x10197264]
mov dword [esp + 0xfc], edi
test al, 1
mov byte [0x1018ca35], 0xb7
mov word [esp + 0x40], 0x71
mov word [esp + 0x42], 0x11
mov word [esp + 0x44], 0x3f
mov word [esp + 0x46], 0x1f
mov word [esp + 0x4c], 3
jne 0x100993d9
or al, 1
mov ecx, 0x10197268
mov byte [0x10197264], al
lea eax, [esp + 0x40]
push eax
call fcn.10043f50
push 0x1008b840
call fcn.1013c36b
add esp, 4
mov cl, byte [esp + 0x14]
mov esi, dword [0x10197268]
mov byte [esp + 0x54], cl
push ebx
lea ecx, [esp + 0x58]
call fcn.1000bc70
push esi
call fcn.1013c2c2
add esp, 4
lea ecx, [esp + 0x54]
push eax
push esi
call fcn.1000bf40
lea edx, [esp + 0x54]
push 0x4e20
push edx
lea ecx, [esp + 0x70]
mov byte [esp + 0x104], 2
call fcn.100303e0
push edi
lea ecx, [esp + 0x58]
mov byte [esp + 0x100], 4
call fcn.1000bc70
call fcn.100992a0
test al, al
jne 0x100994dc
mov esi, dword [esp + 0x104]
mov al, byte [esp + 0x14]
push ebx
mov ecx, esi
mov byte [esi], al
call fcn.1000bc70
lea ecx, [esp + 0x14]
mov byte [esp + 0xfc], 5
push ecx
lea ecx, [esi + 0x14]
mov dword [esi + 0x10], ebx
call fcn.10043a70
mov byte [esp + 0xfc], 6
mov dword [esi + 0x24], ebx
mov edx, dword [0x1016a930]
lea ecx, [esp + 0x13]
mov dword [esi + 0x28], edx
mov eax, dword [0x1016a934]
push ecx
lea ecx, [esi + 0x38]
mov dword [esi + 0x2c], eax
mov dword [esi + 0x30], ebx
mov dword [esi + 0x34], ebx
call fcn.10043a70
mov byte [esp + 0xfc], 4
mov dword [esp + 0xf0], edi
lea ecx, [esp + 0x68]
mov byte [esp + 0xfc], 1
call fcn.10030510
mov eax, dword [esp + 0x108]
mov byte [esp + 0xfc], bl
cmp eax, ebx
je 0x1009a025
mov edx, dword [eax]
push eax
call dword [edx + 8]
jmp 0x1009a025
mov eax, 0xd7
cdq
idiv dword [0x1018ca10]
mov eax, dword [0x1018ca0c]
mov dl, byte [edx + eax]
push edx
call fcn.10098410
mov dl, al
mov byte [esp + 0x17], dl
call fcn.10098410
mov dl, byte [esp + 0x17]
mov cl, al
mov al, dl
imul cl
push eax
mov al, byte [0x1018ca3b]
push 0xffffffffffffffca
push eax
call fcn.100980e0
mov ecx, dword [0x10191a54]
add esp, 0x10
mov byte [0x1018ca36], al
call fcn.10058ed0
mov cl, byte [0x1018ca3c]
mov dl, byte [0x1018ca36]
push 1
push ecx
push 1
push 0x5e
push edx
mov dword [esp + 0x78], eax
call fcn.100786d0
mov byte [0x1018ca3b], al
mov al, byte [0x10197074]
add esp, 0x14
mov word [esp + 0x14], 0xbc
test al, 1
jne 0x10099589
or al, 1
push 0x90
mov byte [0x10197074], al
lea eax, [esp + 0x18]
push eax
mov ecx, 0x10197078
call fcn.1000b9b0
push 0x1009a210
call fcn.1013c36b
add esp, 4
mov cl, byte [esp + 0x14]
mov esi, dword [0x10197078]
mov byte [esp + 0xd0], cl
push ebx
lea ecx, [esp + 0xd4]
call fcn.1000bc70
push esi
call fcn.1013c2c2
add esp, 4
lea ecx, [esp + 0xd0]
push eax
push esi
call fcn.1000bf40
mov dl, byte [esp + 0x14]
mov byte [esp + 0xfc], 8
push ebx
lea ecx, [esp + 0x44]
mov byte [esp + 0x44], dl
call fcn.1000bc70
push 0x101913e8
call fcn.1013c2c2
add esp, 4
lea ecx, [esp + 0x40]
push eax
push 0x101913e8
call fcn.1000bf40
mov eax, 0xff71
mov ecx, 0xff70
mov word [esp + 0xb8], ax
mov word [esp + 0xbc], ax
mov word [esp + 0xc0], ax
mov eax, 0xff73
mov word [esp + 0xc8], ax
mov word [esp + 0xce], ax
mov al, byte [0x10197084]
mov byte [esp + 0xfc], 9
test al, 1
mov word [esp + 0xba], cx
mov word [esp + 0xbe], 0xff76
mov word [esp + 0xc2], 0xff74
mov word [esp + 0xc4], 0xff60
mov word [esp + 0xc6], cx
mov word [esp + 0xca], 0xff65
mov word [esp + 0xcc], 0xff66
jne 0x100996a4
or al, 1
mov ecx, 0x10197088
mov byte [0x10197084], al
lea eax, [esp + 0xb8]
push eax
call fcn.100a8330
push 0x100a81f0
call fcn.1013c36b
add esp, 4
mov cl, byte [esp + 0x14]
mov esi, dword [0x10197088]
mov byte [esp + 0x54], cl
push ebx
lea ecx, [esp + 0x58]
call fcn.1000bc70
push esi
call fcn.1013c2c2
add esp, 4
lea ecx, [esp + 0x54]
push eax
push esi
call fcn.1000bf40
lea edx, [esp + 0x40]
lea eax, [esp + 0x54]
push edx
lea ecx, [esp + 0xe4]
push eax
push ecx
mov ecx, dword [0x10191a54]
mov byte [esp + 0x108], 0xa
call fcn.10058e60
mov ecx, eax
call fcn.10067fe0
lea edx, [esp + 0xd0]
mov byte [esp + 0xfc], 0xb
push edx
push eax
lea eax, [esp + 0x24]
push eax
call fcn.10021fb0
add esp, 0xc
push 1
lea ecx, [esp + 0xe4]
mov byte [esp + 0x100], 0x10
call fcn.1000bc70
push 1
lea ecx, [esp + 0x58]
mov byte [esp + 0x100], 0xf
call fcn.1000bc70
push 1
lea ecx, [esp + 0x44]
mov byte [esp + 0x100], 0xe
call fcn.1000bc70
push 1
lea ecx, [esp + 0xd4]
mov byte [esp + 0x100], 0xd
call fcn.1000bc70
mov al, byte [0x1018ca3c]
mov dl, byte [0x1018ca39]
dec al
mov ecx, dword [0x1018ca10]
mov byte [0x1018ca3c], al
mov al, byte [0x1018ca37]
inc dl
inc al
mov byte [esp + 0x13], al
mov eax, 0x276
mov byte [0x1018ca39], dl
mov esi, dword [0x1018ca0c]
cdq
idiv ecx
mov eax, 0x1b2
mov dl, byte [edx + esi]
push edx
cdq
idiv ecx
mov al, byte [edx + esi]
mov dl, byte [0x1018ca3c]
push eax
mov eax, 0x1df
push edx
cdq
idiv ecx
mov al, byte [edx + esi]
push eax
call fcn.100980e0
mov cl, al
mov eax, 0x62
cdq
idiv dword [0x1018ca10]
mov eax, dword [0x1018ca0c]
mov byte [esp + 0x24], cl
mov cl, 0x61
add esp, 0x10
sub cl, byte [edx + eax]
mov dl, byte [esp + 0x14]
mov al, dl
mov dl, 0x5a
imul cl
imul byte [0x1018ca39]
mov cl, al
mov al, byte [esp + 0x13]
imul dl
mov dl, byte [esp + 0x14]
add cl, al
mov al, byte [esp + 0x13]
inc cl
mov byte [0x1018ca37], al
mov byte [esp + 0x30], dl
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
mov al, cl
inc cl
mov byte [esp + 0x18], cl
push eax
mov esi, dword [esp + 0x1c]
mov byte [esp + 0x100], 0x11
push esi
push 0x10
push esi
call fcn.100980c0
add esp, 8
push eax
push esi
call fcn.100980e0
mov ecx, dword [esp + 0x34]
mov ebp, dword [esp + 0x118]
mov byte [esp + 0x28], al
mov eax, dword [esp + 0x30]
add esp, 0x10
cmp eax, ecx
mov dword [esp + 0x2c], eax
je 0x10099a7a
mov eax, dword [esp + 0x18]
push 0xffffffffffffffc3
push eax
call fcn.100980c0
mov esi, dword [0x1018ca10]
mov cl, al
mov eax, 0x2c4
mov byte [esp + 0x1c], cl
cdq
idiv esi
mov al, byte [0x1018ca37]
mov cl, 0x33
mov edi, dword [0x1018ca0c]
imul cl
mov cl, 0x31
mov dl, byte [edx + edi]
add dl, al
mov al, byte [esp + 0x1c]
add dl, 0x6e
imul dl
imul cl
push eax
mov eax, 0x2ab
cdq
idiv esi
mov dl, byte [edx + edi]
push edx
call fcn.100980c0
mov edi, dword [esp + 0x11c]
add esp, 0x10
cmp edi, ebx
mov byte [esp + 0x18], al
je 0x100998e3
mov ecx, edi
call fcn.10062d80
test al, al
jne 0x10099aa6
mov al, byte [esp + 0x14]
push ebx
lea ecx, [esp + 0x44]
mov byte [esp + 0x44], al
call fcn.1000bc70
push str.__t_r_n
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x40]
push 1
push esi
call fcn.1000c010
test al, al
je 0x10099931
mov ecx, dword [esp + 0x44]
push esi
push str.__t_r_n
push ecx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x40]
push esi
call fcn.1000bff0
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x40]
push edx
lea ecx, [esp + 0x58]
push eax
push ecx
mov byte [esp + 0x108], 0x15
call fcn.10022dc0
add esp, 0xc
push 1
lea ecx, [esp + 0x44]
mov byte [esp + 0x100], 0x17
call fcn.1000bc70
mov dl, byte [esp + 0x18]
mov cl, byte [0x1018ca37]
mov eax, dword [esp + 0x5c]
inc dl
inc cl
cmp eax, ebx
mov byte [esp + 0x18], dl
mov byte [0x1018ca37], cl
je 0x10099a50
mov esi, dword [esp + 0x64]
lea edx, [esp + 0x54]
push edx
mov ecx, esi
call fcn.10098490
cmp eax, 0xffffffff
mov dword [esp + 0x50], eax
je 0x10099a50
push eax
mov ecx, esi
call fcn.10098450
mov esi, eax
push edi
mov ecx, esi
call fcn.1009a4a0
push ecx
mov byte [0x1018ca3d], 0x9d
mov eax, esp
cmp ebp, ebx
mov dword [esp + 0x18], esp
mov dword [eax], ebp
je 0x100999d1
mov eax, dword [ebp]
push ebp
call dword [eax + 4]
lea ecx, [esp + 0x74]
mov byte [esp + 0x100], 0x17
push ecx
mov ecx, esi
call fcn.1009be70
mov eax, dword [esp + 0x78]
mov byte [esp + 0xfc], 0x19
cmp eax, ebx
jne 0x10099ba0
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x50]
push edx
push 1
push eax
lea ecx, [esp + 0x3c]
call fcn.100a8cd0
mov byte [esp + 0x18], 0x3e
lea ecx, [esp + 0xa8]
mov byte [esp + 0xfc], 0x21
call fcn.10023eb0
push 1
lea ecx, [esp + 0x88]
mov byte [esp + 0x100], 0x20
call fcn.1000bc70
push 1
lea ecx, [esp + 0x74]
mov byte [esp + 0x100], 0x17
call fcn.1000bc70
push 1
lea ecx, [esp + 0x58]
mov byte [esp + 0x100], 0x11
call fcn.1000bc70
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
add eax, 0x10
cmp eax, ecx
mov dword [esp + 0x2c], eax
jne 0x1009986f
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
mov edx, eax
push ebx
sub edx, ecx
push eax
and edx, 0xfffffffc
mov ebp, eax
cmp edx, 0x40
mov edi, ecx
push ecx
jg 0x10099d28
call fcn.100aa200
add esp, 0xc
jmp 0x10099d52
mov esi, dword [esp + 0x104]
mov cl, byte [esp + 0x14]
push ebx
mov byte [esi], cl
mov ecx, esi
call fcn.1000bc70
lea edx, [esp + 0x14]
mov byte [esp + 0xfc], 0x12
push edx
lea ecx, [esi + 0x14]
mov dword [esi + 0x10], ebx
call fcn.10043a70
mov byte [esp + 0xfc], 0x13
mov dword [esi + 0x24], ebx
mov eax, dword [0x1016a930]
lea edx, [esp + 0x13]
mov dword [esi + 0x28], eax
mov ecx, dword [0x1016a934]
mov dword [esi + 0x2c], ecx
push edx
lea ecx, [esi + 0x38]
mov dword [esi + 0x30], ebx
mov dword [esi + 0x34], ebx
call fcn.10043a70
mov eax, dword [esp + 0x34]
mov byte [esp + 0xfc], 0x11
push eax
mov dword [esp + 0xf4], 1
mov byte [esp + 0x100], 0xd
call fcn.101307a0
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
add esp, 4
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
cmp edi, eax
mov byte [esp + 0xfc], 4
mov ebp, eax
je 0x10099b5f
push ebx
mov ecx, edi
call fcn.100461a0
add edi, 0x10
cmp edi, ebp
jne 0x10099b4c
mov edi, dword [esp + 0x20]
push edi
call fcn.101307a0
add esp, 4
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
lea ecx, [esp + 0x68]
mov byte [esp + 0xfc], 1
call fcn.10030510
mov eax, dword [esp + 0x108]
mov byte [esp + 0xfc], bl
cmp eax, ebx
je 0x1009a025
jmp 0x1009a01f
mov esi, dword [esp + 0x104]
mov dl, byte [esp + 0x70]
push ebx
mov ecx, esi
mov byte [esi], dl
call fcn.1000bc70
mov eax, dword [0x1016a210]
lea ecx, [esp + 0x70]
push eax
push ebx
push ecx
mov ecx, esi
call fcn.1000ba60
mov edx, dword [esp + 0x80]
lea eax, [esp + 0x84]
mov byte [esp + 0xfc], 0x1a
push eax
lea ecx, [esi + 0x14]
mov dword [esi + 0x10], edx
call fcn.10023d70
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x98]
mov byte [esp + 0xfc], 0x1b
mov dword [esi + 0x24], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], edx
mov edx, dword [esp + 0xa4]
lea eax, [esp + 0xa8]
mov dword [esi + 0x30], ecx
push eax
lea ecx, [esi + 0x38]
mov dword [esi + 0x34], edx
call fcn.1005ef60
mov byte [esp + 0xfc], 0x19
mov dword [esp + 0xf0], 1
lea ecx, [esp + 0xa8]
mov byte [esp + 0xfc], 0x1e
call fcn.10023eb0
push 1
lea ecx, [esp + 0x88]
mov byte [esp + 0x100], 0x1d
call fcn.1000bc70
push 1
lea ecx, [esp + 0x74]
mov byte [esp + 0x100], 0x17
call fcn.1000bc70
push 1
lea ecx, [esp + 0x58]
mov byte [esp + 0x100], 0x11
call fcn.1000bc70
mov ecx, dword [esp + 0x34]
mov byte [esp + 0xfc], 0xd
push ecx
call fcn.101307a0
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
add esp, 4
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
cmp edi, eax
mov byte [esp + 0xfc], 4
mov ebp, eax
je 0x10099ce1
push ebx
mov ecx, edi
call fcn.100461a0
add edi, 0x10
cmp edi, ebp
jne 0x10099cce
mov edi, dword [esp + 0x20]
push edi
call fcn.101307a0
add esp, 4
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
lea ecx, [esp + 0x68]
mov byte [esp + 0xfc], 1
call fcn.10030510
mov eax, dword [esp + 0x108]
mov byte [esp + 0xfc], bl
cmp eax, ebx
je 0x1009a025
mov edx, dword [eax]
push eax
call dword [edx + 8]
jmp 0x1009a025
call fcn.100a9ff0
lea esi, [edi + 0x40]
push ebx
push esi
push edi
call fcn.100aa200
add esp, 0x18
cmp esi, ebp
je 0x10099d52
mov eax, dword [esi]
push eax
push esi
call fcn.100aa0c0
add esi, 4
add esp, 8
cmp esi, ebp
jne 0x10099d3f
mov dl, byte [0x1018ca3a]
mov ebp, dword [esp + 0x64]
inc dl
xor edi, edi
mov ecx, ebp
mov byte [0x1018ca3a], dl
mov dword [esp + 0x2c], edi
call fcn.10098420
test eax, eax
jbe 0x10099f2c
mov eax, 0x207
mov cl, byte [esp + 0x18]
cdq
idiv dword [0x1018ca10]
mov eax, dword [0x1018ca0c]
inc cl
mov esi, dword [esp + 0x34]
mov byte [esp + 0x18], cl
mov al, byte [edx + eax]
imul cl
mov ecx, dword [esp + 0x38]
sub ecx, esi
sar ecx, 2
shl al, 1
cmp ecx, ebx
mov byte [0x1018ca36], al
jle 0x10099dd4
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
cmp dword [esi + eax*4], edi
lea edx, [esi + eax*4]
jae 0x10099dce
add edx, 4
mov esi, edx
or edx, 0xffffffff
sub edx, eax
add ecx, edx
jmp 0x10099dd0
mov ecx, eax
cmp ecx, ebx
jg 0x10099db1
cmp esi, dword [esp + 0x38]
je 0x10099de2
cmp edi, dword [esi]
jae 0x10099f18
push edi
mov ecx, ebp
call fcn.10098450
mov esi, eax
mov al, byte [esp + 0x18]
mov ecx, dword [0x1018ca10]
dec al
mov byte [esp + 0x18], al
mov eax, 0x1bf
cdq
idiv ecx
mov edi, dword [0x1018ca0c]
mov ebp, dword [esp + 0x18]
mov al, byte [edx + edi]
mov dl, byte [0x1018ca38]
push eax
add dl, 0x58
push ebp
mov eax, 0x20b
push edx
cdq
idiv ecx
mov al, byte [edx + edi]
push eax
push ebp
call fcn.100786d0
mov ecx, dword [esp + 0x120]
add esp, 0x14
push ecx
mov ecx, esi
call fcn.1009a4a0
mov eax, 0xf1
mov ebp, dword [esp + 0x108]
cdq
idiv dword [0x1018ca10]
mov eax, dword [0x1018ca0c]
cmp ebp, ebx
mov cl, byte [edx + eax]
push ecx
mov byte [0x1018ca37], cl
mov eax, esp
mov dword [esp + 0x54], esp
mov dword [eax], ebp
je 0x10099e76
mov edx, dword [ebp]
push ebp
call dword [edx + 4]
lea eax, [esp + 0x74]
mov ecx, esi
push eax
mov byte [esp + 0x104], 0x11
call fcn.1009be70
mov eax, dword [esp + 0x78]
mov byte [esp + 0xfc], 0x24
cmp eax, ebx
jne 0x1009a040
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xac]
push ecx
push edx
lea ecx, [esp + 0xb0]
mov byte [esp + 0x104], 0x2c
call fcn.100242a0
mov eax, dword [esp + 0xac]
push eax
call fcn.101307a0
add esp, 4
mov dword [esp + 0xac], ebx
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], ebx
push 1
lea ecx, [esp + 0x88]
mov byte [esp + 0x100], 0x2b
call fcn.1000bc70
push 1
lea ecx, [esp + 0x74]
mov byte [esp + 0x100], 0x11
call fcn.1000bc70
mov edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x64]
inc edi
mov ecx, ebp
mov dword [esp + 0x2c], edi
call fcn.10098420
cmp edi, eax
jb 0x10099d79
mov esi, dword [esp + 0x104]
mov cl, byte [esp + 0x14]
push ebx
mov byte [esi], cl
mov ecx, esi
call fcn.1000bc70
mov dl, byte [esp + 0x14]
lea ecx, [esi + 0x14]
mov byte [esp + 0xfc], 0x2e
mov dword [esi + 0x10], ebx
push ebx
mov byte [ecx], dl
call fcn.1000bc70
mov byte [esp + 0xfc], 0x2f
mov dword [esi + 0x24], ebx
mov eax, dword [0x1016a930]
lea edx, [esp + 0x14]
mov dword [esi + 0x28], eax
mov ecx, dword [0x1016a934]
mov dword [esi + 0x2c], ecx
push edx
lea ecx, [esi + 0x38]
mov dword [esi + 0x30], ebx
mov dword [esi + 0x34], ebx
call fcn.10043a70
mov eax, dword [esp + 0x34]
mov byte [esp + 0xfc], 0x11
push eax
mov dword [esp + 0xf4], 1
mov byte [esp + 0x100], 0xd
call fcn.101307a0
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
add esp, 4
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
cmp edi, eax
mov byte [esp + 0xfc], 4
mov ebp, eax
je 0x10099fe7
push ebx
mov ecx, edi
call fcn.100461a0
add edi, 0x10
cmp edi, ebp
jne 0x10099fd4
mov edi, dword [esp + 0x20]
push edi
call fcn.101307a0
add esp, 4
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
lea ecx, [esp + 0x68]
mov byte [esp + 0xfc], 1
call fcn.10030510
mov eax, dword [esp + 0x108]
mov byte [esp + 0xfc], bl
cmp eax, ebx
je 0x1009a025
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [esp + 0xf4]
mov eax, esi
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xf0
ret
mov esi, dword [esp + 0x104]
mov cl, byte [esp + 0x70]
push ebx
mov byte [esi], cl
mov ecx, esi
call fcn.1000bc70
mov edx, dword [0x1016a210]
lea eax, [esp + 0x70]
push edx
push ebx
push eax
mov ecx, esi
call fcn.1000ba60
mov ecx, dword [esp + 0x80]
mov dl, byte [esp + 0x84]
mov byte [esp + 0xfc], 0x25
lea edi, [esi + 0x14]
mov dword [esi + 0x10], ecx
push ebx
mov ecx, edi
mov byte [edi], dl
call fcn.1000bc70
mov eax, dword [0x1016a210]
lea ecx, [esp + 0x84]
push eax
push ebx
push ecx
mov ecx, edi
call fcn.1000ba60
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x94]
mov eax, dword [esp + 0x98]
mov byte [esp + 0xfc], 0x26
mov dword [esi + 0x2c], ecx
lea ecx, [esp + 0xa8]
mov dword [esi + 0x24], edx
mov edx, dword [esp + 0xa0]
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0xa4]
push ecx
lea ecx, [esi + 0x38]
mov dword [esi + 0x30], edx
mov dword [esi + 0x34], eax
call fcn.1005ef60
mov byte [esp + 0xfc], 0x24
mov dword [esp + 0xf0], 1
mov edx, dword [esp + 0xb0]
mov eax, dword [esp + 0xac]
push edx
push eax
lea ecx, [esp + 0xb0]
mov byte [esp + 0x104], 0x29
call fcn.100242a0
mov ecx, dword [esp + 0xac]
push ecx
call fcn.101307a0
add esp, 4
mov dword [esp + 0xac], ebx
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], ebx
push 1
lea ecx, [esp + 0x88]
mov byte [esp + 0x100], 0x28
call fcn.1000bc70
push 1
lea ecx, [esp + 0x74]
mov byte [esp + 0x100], 0x11
call fcn.1000bc70
mov edx, dword [esp + 0x34]
mov byte [esp + 0xfc], 0xd
push edx
call fcn.101307a0
add esp, 4
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov dword [esp + 0x3c], ebx
cmp edi, eax
mov byte [esp + 0xfc], 4
mov dword [esp + 0x50], eax
je 0x1009a1c4
push ebx
mov ecx, edi
call fcn.100461a0
mov eax, dword [esp + 0x50]
add edi, 0x10
cmp edi, eax
jne 0x1009a1ad
mov edi, dword [esp + 0x20]
push edi
call fcn.101307a0
add esp, 4
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
lea ecx, [esp + 0x68]
mov byte [esp + 0xfc], 1
call fcn.10030510
cmp ebp, ebx
mov byte [esp + 0xfc], bl
je 0x1009a025
mov eax, dword [ebp]
push ebp
call dword [eax + 8]
jmp 0x1009a025