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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x160
push esi
push edi
mov edi, ecx
mov dword [esp + 0x44], edi
mov eax, dword [edi + 0xec]
cmp eax, 0xed8
jge 0xbc576c
inc eax
mov dword [edi + 0xec], eax
cmp eax, 1
je 0xb911bd
cmp byte [edi + 0xfc], 0
mov byte [edi + 0x144], 0
jne 0xb90fe4
mov esi, dword [0xc106f0]
cmp byte [edi + 0x144], 0
mov edx, 2
jne 0xb90fe4
cmp byte [0xc47281], 0
jne 0xbc57b9
cmp byte [0xc477e8], 0
jne 0xbc57cb
push 1
push 0
push 0
push 0
lea eax, [esp + 0xa4]
push eax
call esi
test eax, eax
jne 0xb91110
cmp byte [0xc47282], 1
je 0xbc5840
cmp dword [edi + 0xf8], 1
je 0xbc66e2
mov edx, 2
cmp dword [0xc484b8], 0
jne 0xbc585d
cmp byte [0xc47287], 1
je 0xbc591d
cmp dword [edi + 0x454], 0
je 0xb90e04
cmp byte [0xc4841c], 0
jne 0xb90e04
mov esi, dword [edi + 0x44c]
lea eax, [edi + 0x44c]
mov byte [0xc4841c], 1
mov dword [esp + 0x14], 0
mov dword [esp + 8], eax
nop
test esi, esi
jne 0xb9100b
mov edi, dword [esp + 8]
lea esp, [esp]
mov eax, dword [edi]
mov dword [esp + 0x18], eax
test eax, eax
jne 0xb91054
mov edi, dword [esp + 0x44]
mov byte [0xc4841c], al
cmp dword [esp + 0x14], eax
jg case.default.0xbc648f
lea edx, [eax + 2]
cmp byte [0xc477bc], 0
je 0xb90ecd
cmp byte [edi + 0x458], 1
je 0xb90ecd
cmp byte [0xc477e8], 1
je 0xb90ecd
xor ecx, ecx
mov dword [esp + 0x9c], 0
mov eax, 8
mov dword [esp + 0xa0], 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00ba18c6
add esp, 4
mov dword [esp + 0x98], eax
xor ecx, ecx
mov word [eax], cx
push 4
call fcn.00ba18c6
add esp, 4
test eax, eax
je 0xb91293
mov dword [eax], 1
mov dword [esp + 0xa4], eax
jmp 0xb90e90
cmp dword [0xc477dc], 0
jne 0xbc5959
cmp byte [0xc477bc], 0
je 0xbc5b03
mov esi, dword [esp + 0xa4]
dec dword [esi]
jne 0xb90ecd
push dword [esp + 0x98]
call fcn.00ba193c
add esp, 4
push esi
call fcn.00ba193c
add esp, 4
cmp dword [edi + 0x184], 0
jne 0xbc5b2c
cmp byte [0xc47930], 0
jne 0xbc61ab
mov eax, dword [edi + 0xf8]
cmp eax, 7
je 0xbc62c8
cmp eax, 2
je 0xb9117b
cmp eax, 8
je 0xbc65a1
cmp eax, 9
je 0xbc65a1
cmp eax, 3
je 0xb9117b
cmp eax, 4
je 0xb9117b
cmp eax, 5
je 0xb9117b
cmp eax, 6
je 0xb9117b
mov esi, dword [ebp + 8]
inc dword [ebp + 8]
mov dword [edi + 0xf4], esi
cmp esi, dword [0xc482a0]
jg 0xbc6474
test esi, esi
jle 0xbc6474
shl esi, 4
add esi, dword [0xc482dc]
je 0xbc6474
mov eax, dword [esi + 4]
xor edx, edx
mov ecx, 1
mov dword [esp + 0x50], edx
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], ecx
mov eax, dword [eax]
mov dword [esp + 8], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x20], edx
movsx eax, word [eax + 8]
test eax, eax
jne 0xb91068
lea eax, [ebp + 8]
mov ecx, edi
push eax
push esi
call fcn.00b8e6a0
mov esi, dword [esp + 0x58]
test esi, esi
jne 0xb910e3
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x14], edx
cmp ecx, 5
jge 0xb91280
mov dword [esp + 0x5c], 1
mov dword [esp + 0x50], 0
mov esi, dword [0xc106f0]
cmp byte [edi + 0xfc], 0
je 0xb90d1f
mov eax, dword [edi + 0xec]
mov byte [edi + 0x144], 0
cmp eax, 1
je 0xb911d4
dec eax
mov dword [edi + 0xec], eax
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi]
cmp byte [eax + 0x11], 0
jne 0xb9104c
mov edi, dword [eax + 0x14]
call dword [0xc107b8]
mov ecx, eax
xor edx, edx
sub eax, edi
cmp edi, 0x7fffffff
ja 0xbc5937
cmp ecx, 0x7fffffff
ja 0xb91037
cdq
mov edi, dword [esi]
test edx, edx
jl 0xb9104c
jg 0xb91245
cmp eax, dword [edi + 0x18]
jae 0xb91245
mov esi, dword [esi + 4]
jmp 0xb90dd0
mov ecx, dword [eax]
cmp byte [ecx + 0x11], 0
jne 0xbc5948
mov eax, dword [eax + 4]
jmp 0xb90de2
cmp eax, 0x33
jne 0xb9107a
push esi
mov ecx, edi
call fcn.00b8e920
jmp 0xb90fa0
dec eax
cmp eax, 0x7e
ja case.0xb9108b.2
movzx eax, byte [eax + 0xb912bc]
jmp dword [eax*4 + 0xb912a8]
lea eax, [esp + 0x50]
mov ecx, edi
push eax
lea eax, [esp + 0x24]
push eax
push esi
push 0
call fcn.00b8f760
test eax, eax
js 0xb90fa0
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x20]
mov eax, dword [ecx + eax*4]
cmp word [eax + 8], 0x7f
je 0xb90fa0
jmp 0xbc63ac
lea eax, [esp + 0x6b]
mov ecx, edi
push eax
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x28]
push eax
push esi
push 0
call fcn.00b8ffe0
jmp 0xb910a6
mov eax, dword [esi + 0xc]
dec dword [eax]
mov eax, dword [esi + 0xc]
cmp dword [eax], 0
je 0xbc63c8
push esi
call fcn.00ba193c
add esp, 4
mov dword [esp + 0x58], 0
jmp 0xb90fac
cmp dword [esp + 0x98], 0x12
je 0xbc582a
mov ecx, dword [0xc477d8]
cmp ecx, 0xffffffff
jne 0xbc57dd
lea eax, [esp + 0x94]
mov ecx, 0xc477b0
push eax
call fcn.00b8314e
test eax, eax
jne 0xb9115f
lea eax, [esp + 0x94]
push eax
call dword [0xc106ec]
lea eax, [esp + 0x94]
push eax
call dword [0xc106e8]
push 1
push 0
push 0
push 0
lea eax, [esp + 0xa4]
push eax
call esi
test eax, eax
je 0xb90d65
jmp 0xb91110
push 0xa
call dword [0xc1017c]
cmp dword [edi + 0x2f0], 0
je 0xb911a9
mov ecx, dword [edi + 0x2f8]
call fcn.00ba0f74
test edx, edx
jl 0xb911a9
jg 0xb91226
cmp eax, dword [edi + 0x2f0]
jae 0xb91226
mov eax, dword [edi + 0xf8]
cmp eax, 3
jl case.default.0xbc648f
jmp 0xbc6483
mov eax, dword [edi + 0x11c]
mov dword [esp + 0x40], eax
test eax, eax
je 0xb90d05
jmp 0xbc5787
mov ecx, edi
call fcn.00b91368
cmp byte [edi + 0xfc], 1
je 0xb91001
mov ecx, edi
call fcn.00b9138b
push 0
call dword [0xc106e4]
push dword [0xc472ac]
call dword [0xc1063c]
mov esi, dword [0xc106e0]
lea eax, [esp + 0x14c]
push 0
push 0
push 0
push eax
call esi
test eax, eax
jle 0xb91001
jmp 0xbc6701
cmp dword [edi + 0xf8], 2
jne 0xb9129a
mov byte [edi + 0x144], 1
mov dword [edi + 0xf8], 0
jmp case.default.0xbc648f
inc dword [esp + 0x14]
call dword [0xc107b8]
mov ecx, dword [esp + 0x44]
mov dword [edi + 0x14], eax
push dword [esi]
call fcn.00b89efe
mov ecx, dword [esi]
push 0
push 1
mov byte [ecx + 0x10], 1
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x4c]
inc eax
push eax
call fcn.00b8b7dc
mov eax, dword [esi]
mov byte [eax + 0x10], 0
jmp 0xb9104c
add ecx, 0xfffffffb
cmp ecx, 0xa
ja case.0xb9128c.6
jmp dword [ecx*4 + 0xb9133c]
xor eax, eax
jmp 0xb90e7e
mov dword [esp + 8], 0
jmp 0xbc6325
push 0xffffffffffffffff
push 0x9a
mov byte [0xc47280], 0
call fcn.00bea390
or eax, 0xffffffff
jmp 0xb91003
push dword [eax]
mov ecx, edi
call fcn.00b89efe
test eax, eax
je 0xbc57a2
mov eax, dword [eax + 0x10]
mov ecx, edi
push 1
inc eax
push eax
call fcn.00bd6f03
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0x44]
call fcn.00bd732e
mov eax, dword [esp + 0x40]
jmp 0xb911c7
cmp byte [edi + 0x145], 0
je 0xb90d84
jmp 0xb90d3e
cmp dword [edi + 0xf8], 0
je 0xb90d84
jmp 0xb90d4b
cmp ecx, dword [0xc47814]
jge 0xbc581b
mov eax, dword [0xc47810]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ecx]
test eax, eax
je 0xbc581b
cmp dword [eax + 0x18], 0
je 0xbc581b
lea eax, [esp + 0x94]
push eax
mov eax, dword [ecx]
push dword [eax + 0x18]
push dword [eax]
call dword [0xc10520]
test eax, eax
jne 0xb9115f
jmp 0xb9112d
mov dword [0xc477d8], 0xffffffff
jmp 0xb9112d
mov byte [edi + 0xfc], 1
mov dword [edi + 0xf8], 1
jmp 0xb90d65
mov byte [0xc47287], 0
mov byte [0xc47282], 0
mov dword [edi + 0xf8], 1
jmp 0xb90d72
mov eax, dword [0xc484bc]
push eax
mov ecx, dword [eax]
mov esi, dword [eax + 4]
mov dword [esp + 0xc], ecx
call fcn.00ba193c
dec dword [0xc484b8]
add esp, 4
mov dword [0xc484bc], esi
neg esi
sbb esi, esi
xor ecx, ecx
and dword [0xc484c0], esi
mov edx, dword [edi + 0x1c8]
mov dword [esp + 0x18], ecx
test edx, edx
je 0xbc58be
mov esi, dword [edi + 0x1c4]
mov edi, dword [esp + 8]
mov eax, dword [esi + ecx*4]
mov eax, dword [eax]
test eax, eax
je 0xbc58b1
cmp dword [eax], edi
je 0xbc58b6
inc ecx
cmp ecx, edx
jb 0xbc58a4
mov edi, dword [esp + 0x44]
mov dword [esp + 0x18], ecx
cmp ecx, edx
je 0xbc590d
mov eax, dword [edi + 0x1c4]
mov eax, dword [eax + ecx*4]
mov ecx, edi
mov eax, dword [eax]
add eax, 8
push eax
call fcn.00b89efe
mov ecx, dword [edi + 0x1c4]
mov esi, eax
mov eax, dword [esp + 0x18]
mov ecx, dword [ecx + eax*4]
mov ecx, dword [ecx]
add ecx, 0x18
push ecx
lea ecx, [edi + 0x14c]
call fcn.00b88007
mov eax, dword [esi + 0x10]
mov ecx, edi
push 0
push 1
inc eax
push eax
call fcn.00b8b7dc
jmp case.default.0xbc648f
mov esi, dword [0xc106f0]
mov edx, 2
jmp 0xb90d91
cmp byte [0xc47281], 0
jne 0xb90d9e
push 0xa
call dword [0xc1017c]
jmp 0xb90fd7
cmp ecx, 0x7fffffff
jbe 0xb91037
jmp 0xb91036
lea eax, [esp + 0x18]
mov ecx, edi
push eax
call fcn.00bea6ce
jmp 0xb90de0
mov eax, dword [0xc477e0]
lea ecx, [esp + 0x94]
mov esi, dword [eax]
push esi
call fcn.00c062c6
mov ecx, 0xc477dc
call fcn.00c0be47
test esi, esi
je 0xbc5983
push ecx
mov ecx, esi
call fcn.00be2734
cmp dword [esp + 0x9c], 0
mov dword [0xc48420], 0
je 0xb90e90
lea eax, [esp + 0x98]
mov ecx, edi
push eax
call fcn.00b89efe
mov esi, eax
test esi, esi
je 0xb90e90
lea ecx, [esp + 0x70]
mov dword [esp + 0x70], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 1
call fcn.00b898d0
mov eax, dword [esp + 0x94]
lea ecx, [esp + 0x12c]
push str._GUI_CTRLID
mov dword [esp + 0x80], 1
mov dword [esp + 0x74], eax
call fcn.00b87da1
push 1
lea eax, [esp + 0x74]
mov ecx, 0xc48270
push eax
lea eax, [esp + 0x134]
push eax
call fcn.00b88973
lea ecx, [esp + 0x12c]
call fcn.00b858c4
lea ecx, [esp + 0x70]
call fcn.00b898d0
mov eax, dword [esp + 0xa8]
lea ecx, [esp + 0xfc]
push str._GUI_WINHANDLE
mov dword [esp + 0x80], 7
mov dword [esp + 0x74], eax
call fcn.00b87da1
push 1
lea eax, [esp + 0x74]
mov ecx, 0xc48270
push eax
lea eax, [esp + 0x104]
push eax
call fcn.00b88973
lea ecx, [esp + 0xfc]
call fcn.00b858c4
lea ecx, [esp + 0x70]
call fcn.00b898d0
mov eax, dword [esp + 0xac]
lea ecx, [esp + 0x11c]
push str._GUI_CTRLHANDLE
mov dword [esp + 0x80], 7
mov dword [esp + 0x74], eax
call fcn.00b87da1
push 1
lea eax, [esp + 0x74]
mov ecx, 0xc48270
push eax
lea eax, [esp + 0x124]
push eax
call fcn.00b88973
lea ecx, [esp + 0x11c]
call fcn.00b858c4
mov byte [edi + 0x458], 1
mov ecx, edi
mov eax, dword [esi + 0x10]
push 0
push 1
inc eax
push eax
call fcn.00b8b7dc
lea ecx, [esp + 0x70]
mov byte [edi + 0x458], 0
call fcn.00b898d0
lea ecx, [esp + 0x98]
call fcn.00b858c4
jmp case.default.0xbc648f
cmp dword [0xc4791c], 0
jne 0xbc5b1f
cmp dword [0xc48420], 0x64
jge 0xbc5b1f
inc dword [0xc48420]
push 0
jmp 0xbc5b21
push 0xa
call dword [0xc1017c]
jmp 0xb90eaa
cmp byte [edi + 0x484], 1
je 0xb90eda
xor eax, eax
mov byte [edi + 0x484], 1
push dword [edi + 0x188]
lea ecx, [esp + 0xf0]
mov dword [esp + 0x68], 0
mov dword [esp + 0xbc], 0xc10b84
mov dword [esp + 0x18], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
call fcn.00be9f5b
lea ecx, [edi + 0x184]
call fcn.00bde012
mov esi, dword [esp + 0xf0]
lea ecx, [esp + 0x80]
mov dword [esp + 0x88], 0
push dword [esi]
call fcn.00b89970
mov esi, dword [esi + 4]
mov ecx, esi
call fcn.00b89851
push dword [esi + 8]
mov ecx, edi
call fcn.00b89efe
mov edx, eax
mov dword [esp + 0x20], edx
mov ecx, dword [edx + 0x10]
push ecx
call fcn.00b87028
mov dword [edi + 0xf4], ecx
mov esi, 3
cmp dword [edx + 0x14], 0
mov dword [esp + 0x3c], eax
jle 0xbc5d41
mov edx, dword [esp + 0xf0]
add edx, 8
mov dword [esp + 0x24], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x18], ecx
mov eax, dword [ecx + esi*4]
cmp word [eax + 8], 0
jne 0xbc5c4e
mov edx, dword [esp + 0x3c]
mov edx, dword [edx + 4]
mov eax, dword [edx + esi*4 + 4]
cmp word [eax + 8], 0x33
je 0xbc5c2b
mov ecx, eax
mov eax, dword [edx + esi*4]
mov eax, dword [eax]
cmp eax, dword [ecx]
je 0xbc5cc4
mov ecx, dword [esp + 0x18]
mov eax, dword [edx + esi*4]
mov eax, dword [eax]
cmp eax, 0x24
je 0xbc5c3e
cmp eax, 0x1e
jne 0xbc5cc4
mov eax, dword [ecx + esi*4 + 4]
inc esi
cmp word [eax + 8], 0
je 0xbc5c0d
mov edx, dword [esp + 0x24]
mov eax, dword [ecx + esi*4 + 4]
inc esi
cmp word [eax + 8], 0x41
jne 0xbc5c7e
mov edx, dword [esp + 0x18]
inc esi
xor ecx, ecx
mov eax, dword [edx + esi*4]
movzx eax, word [eax + 8]
cmp ax, 0x47
jne 0xbc5c71
inc ecx
jmp 0xbc5cc1
cmp ax, 0x48
jne 0xbc5cb7
dec ecx
jns 0xbc5cc1
mov edx, dword [esp + 0x24]
push dword [edx]
lea ecx, [esp + 0xbc]
call fcn.00bd6ca9
mov ecx, dword [esp + 0x64]
inc esi
mov eax, dword [esp + 0x20]
inc ecx
mov edx, dword [esp + 0x24]
add edx, 4
mov dword [esp + 0x64], ecx
mov dword [esp + 0x24], edx
cmp ecx, dword [eax + 0x14]
jge 0xbc5d32
mov eax, dword [esp + 0x3c]
jmp 0xbc5bf5
cmp ax, 0x40
jne 0xbc5cc1
test ecx, ecx
je 0xbc5c7a
inc esi
jmp 0xbc5c61
mov eax, dword [esp + 0x3c]
mov ecx, edi
mov eax, dword [eax + 4]
mov eax, dword [eax + esi*4 + 4]
movsx eax, word [eax + 0xa]
push eax
push 0x91
call fcn.00bea390
jmp 0xbc5d02
mov ecx, esi
call fcn.00b858c4
push esi
call fcn.00ba193c
add esp, 4
mov dword [esp + 0x34], 1
mov dword [esp + 0x28], 0
lea ecx, [esp + 0x80]
call fcn.00b89ce0
lea ecx, [esp + 0xec]
call fcn.00bd6d38
lea ecx, [esp + 0xb8]
call fcn.00bd6d38
mov byte [edi + 0x484], 0
jmp 0xb90eda
mov eax, dword [esp + 0xbc]
mov edx, dword [esp + 0x20]
mov dword [esp + 0x14], eax
push dword [edx + 0x10]
call fcn.00b883c1
mov eax, dword [esp + 0x20]
mov esi, 3
mov dword [esp + 0x4c], esi
mov dword [esp + 0x18], 1
cmp dword [eax + 0x14], 1
jl 0xbc5f99
mov eax, dword [esp + 0x3c]
xor edx, edx
mov dword [esp + 0x6c], edx
mov ecx, dword [eax + 4]
mov dword [esp + 8], ecx
mov eax, dword [ecx + esi*4]
cmp word [eax + 8], dx
jne 0xbc5da9
mov eax, dword [ecx + esi*4]
mov eax, dword [eax]
cmp eax, 0x24
je 0xbc5d96
cmp eax, 0x1e
jne 0xbc5d97
mov edx, 0x100
inc esi
mov eax, dword [ecx + esi*4]
cmp word [eax + 8], 0
je 0xbc5d82
mov dword [esp + 0x6c], edx
mov dword [esp + 0x4c], esi
mov edi, dword [esp + 8]
lea edx, [esi*4 + 4]
mov dword [esp + 0x24], 1
xor ecx, ecx
mov esi, dword [esp + 0x24]
mov eax, dword [edx + edi]
movzx eax, word [eax + 8]
cmp ax, 0x47
jne 0xbc5dd5
inc ecx
jmp 0xbc5ead
cmp ax, 0x48
jne 0xbc5e9f
dec ecx
jns 0xbc5ead
mov eax, dword [esp + 0x64]
mov edi, dword [esp + 0x44]
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x4c]
cmp dword [esp + 0x18], eax
jle 0xbc5f56
lea eax, [esi + 2]
mov dword [esp + 0x28], 0
mov dword [esp + 8], eax
mov ecx, edi
mov eax, dword [esp + 0x24]
add eax, esi
mov dword [esp + 0x30], 0
push eax
lea eax, [esp + 0x2c]
mov dword [esp + 0x38], 1
push eax
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x48]
call fcn.00b89f40
test eax, eax
js 0xbc603c
mov eax, dword [esp + 0x6c]
or eax, 0x200
push 1
push eax
lea eax, [esp + 0x30]
push eax
mov eax, dword [esp + 0x48]
mov eax, dword [eax + 4]
mov eax, dword [eax + esi*4]
push dword [eax]
call fcn.00b88480
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0xbc5e7f
push ecx
call fcn.00b8799d
mov dword [esp + 0x30], 0
mov eax, dword [esp + 0x34]
cmp eax, 5
jl case.0xbc5e98.6
add eax, 0xfffffffb
cmp eax, 0xa
ja case.0xbc5e98.6
jmp dword [eax*4 + 0xbc6738]
cmp ax, 0x40
jne 0xbc5ead
test ecx, ecx
je 0xbc5de6
inc esi
add edx, 4
jmp 0xbc5dc2
mov eax, dword [esp + 0x28]
test eax, eax
je case.0xbc5e98.6
push eax
call dword [0xc1045c]
push dword [esp + 0x28]
jmp 0xbc5f3c
mov eax, dword [esp + 0x28]
mov dword [esp + 8], eax
test eax, eax
je case.0xbc5e98.6
lea ecx, [eax + 8]
jmp 0xbc5f33
mov ecx, dword [esp + 0x28]
test ecx, ecx
je case.0xbc5e98.6
push ecx
call fcn.00b88c94
jmp case.0xbc5e98.6
mov eax, dword [esp + 0x28]
push dword [eax + 4]
call fcn.00ba193c
add esp, 4
push dword [esp + 0x28]
jmp 0xbc5f3c
mov ecx, dword [esp + 0x28]
test ecx, ecx
je case.0xbc5e98.6
push ecx
call fcn.00bd7a34
jmp case.0xbc5e98.6
mov ecx, dword [esp + 0x28]
test ecx, ecx
je case.0xbc5e98.6
push ecx
call fcn.00ba036f
jmp case.0xbc5e98.6
mov eax, dword [esp + 0x28]
mov dword [esp + 8], eax
test eax, eax
je case.0xbc5e98.6
mov ecx, eax
call fcn.00b858c4
push dword [esp + 8]
call fcn.00ba193c
add esp, 4
mov dword [esp + 0x34], 1
mov dword [esp + 0x28], 0
jmp 0xbc5f73
mov eax, dword [esp + 0x14]
or edx, 0x200
push 1
push edx
push dword [eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + esi*4]
push dword [eax]
call fcn.00b88480
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
inc eax
add dword [esp + 0x14], 4
add esi, eax
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x4c], esi
mov dword [esp + 0x18], eax
cmp eax, dword [ecx + 0x14]
jle 0xbc5d68
push 0xc3aa4c
lea ecx, [esp + 0x140]
call fcn.00b87da1
mov esi, dword [esp + 0x80]
xor eax, eax
cmp dword [esp + 0x8c], 6
push 1
setne al
dec eax
and eax, esi
push 0
push eax
lea eax, [esp + 0x148]
push eax
call fcn.00b88480
lea ecx, [esp + 0x13c]
call fcn.00b858c4
mov eax, dword [esp + 0x20]
mov ecx, edi
push 0
push 0
mov eax, dword [eax + 0x10]
inc eax
push eax
call fcn.00b8b7dc
mov ecx, 0xc48280
call fcn.00b8829f
mov ecx, dword [esp + 0x88]
test ecx, ecx
je 0xbc6019
push ecx
call fcn.00b8799d
mov dword [esp + 0x88], 0
mov eax, dword [esp + 0x8c]
cmp eax, 5
jl case.0xbc6035.6
add eax, 0xfffffffb
cmp eax, 0xa
ja case.0xbc6035.6
jmp dword [eax*4 + 0xbc6764]
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0xbc6052
push ecx
call fcn.00b8799d
mov dword [esp + 0x30], 0
mov eax, dword [esp + 0x34]
cmp eax, 5
jl case.0xbc606b.6
add eax, 0xfffffffb
cmp eax, 0xa
ja case.0xbc606b.6
jmp dword [eax*4 + 0xbc6790]
mov eax, dword [esp + 0x28]
test eax, eax
je case.0xbc606b.6
push eax
call dword [0xc1045c]
push dword [esp + 0x28]
jmp 0xbc5cea
mov esi, dword [esp + 0x28]
test esi, esi
je case.0xbc606b.6
lea ecx, [esi + 8]
jmp 0xbc5ce4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je case.0xbc606b.6
push ecx
call fcn.00b88c94
jmp case.0xbc606b.6
mov eax, dword [esp + 0x28]
push dword [eax + 4]
call fcn.00ba193c
add esp, 4
push dword [esp + 0x28]
jmp 0xbc5cea
mov ecx, dword [esp + 0x28]
test ecx, ecx
je case.0xbc606b.6
push ecx
call fcn.00bd7a34
jmp case.0xbc606b.6
mov ecx, dword [esp + 0x28]
test ecx, ecx
je case.0xbc606b.6
push ecx
call fcn.00ba036f
jmp case.0xbc606b.6
mov esi, dword [esp + 0x28]
test esi, esi
je case.0xbc606b.6
jmp 0xbc5ce2
test esi, esi
je case.0xbc6035.6
push esi
call dword [0xc1045c]
jmp 0xbc6168
test esi, esi
je case.0xbc6035.6
lea ecx, [esi + 8]
jmp 0xbc6163
test esi, esi
je case.0xbc6035.6
push ecx
mov ecx, esi
call fcn.00b88c94
jmp case.0xbc6035.6
push dword [esi + 4]
call fcn.00ba193c
add esp, 4
jmp 0xbc6168
test esi, esi
je case.0xbc6035.6
push ecx
mov ecx, esi
call fcn.00bd7a34
jmp case.0xbc6035.6
test esi, esi
je case.0xbc6035.6
push ecx
mov ecx, esi
call fcn.00ba036f
jmp case.0xbc6035.6
test esi, esi
je case.0xbc6035.6
mov ecx, esi
call fcn.00b858c4
push esi
call fcn.00ba193c
add esp, 4
lea ecx, [esp + 0xec]
mov dword [esp + 0x8c], 1
mov dword [esp + 0x80], 0
call fcn.00bd6d38
lea ecx, [esp + 0xb8]
call fcn.00bd6d38
mov byte [edi + 0x484], 0
jmp case.default.0xbc648f
cmp byte [edi + 0x459], 1
je 0xb90ee7
lea ecx, [esp + 0x98]
call fcn.00b87627
lea eax, [esp + 0x94]
mov ecx, 0xc47890
push eax
call fcn.00be29f8
test al, al
je 0xbc62b7
cmp dword [esp + 0x9c], 0
je 0xbc61c4
lea eax, [esp + 0x98]
mov ecx, edi
push eax
call fcn.00b89efe
mov esi, eax
test esi, esi
je 0xbc61c4
lea ecx, [esp + 0xd8]
mov dword [esp + 0xd8], 0
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 1
call fcn.00b898d0
mov eax, dword [esp + 0x94]
lea ecx, [esp + 0x10c]
push str._TRAY_ID
mov dword [esp + 0xe8], 1
mov dword [esp + 0xdc], eax
call fcn.00b87da1
push 1
lea eax, [esp + 0xdc]
mov ecx, 0xc48270
push eax
lea eax, [esp + 0x114]
push eax
call fcn.00b88973
lea ecx, [esp + 0x10c]
call fcn.00b858c4
mov byte [edi + 0x459], 1
mov ecx, edi
mov eax, dword [esi + 0x10]
push 0
push 1
inc eax
push eax
call fcn.00b8b7dc
lea ecx, [esp + 0xd8]
mov byte [edi + 0x459], 0
call fcn.00b898d0
lea ecx, [esp + 0x98]
call fcn.00b858c4
jmp case.default.0xbc648f
lea ecx, [esp + 0x98]
call fcn.00b858c4
jmp 0xb90ee7
push 0xa
push dword [edi + 0x444]
call dword [0xc1016c]
mov dword [esp + 0x48], eax
cmp eax, 0x102
je case.default.0xbc648f
lea eax, [esp + 0x48]
push eax
push dword [edi + 0x444]
call dword [0xc10290]
push dword [edi + 0x444]
call dword [0xc1035c]
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
jmp 0xbc6325
push eax
call dword [0xc1035c]
mov dword [edi + 0x448], 0
mov dword [esp + 8], 0
push ecx
lea eax, [esp + 0xc]
push eax
mov eax, dword [edi]
mov ecx, dword [eax + 4]
add ecx, edi
call fcn.00ba07a4
jmp 0xb9122f
lea ecx, [edi + 0x168]
call fcn.00bfc3b0
mov ecx, eax
call fcn.00bd6b9c
test al, al
jne 0xbc6375
mov eax, dword [esp + 8]
mov ecx, edi
movsx eax, word [eax + 0xa]
push eax
push 0xa7
call fcn.00bea390
lea ecx, [esp + 0x50]
call fcn.00b89ce0
jmp case.default.0xbc648f
lea ecx, [edi + 0x168]
call fcn.00bfc3b0
push eax
lea eax, [esp + 0x24]
mov ecx, edi
push eax
push esi
call fcn.00bfb90a
jmp 0xb910a6
push 0xffffffffffffffff
lea eax, [esp + 0x54]
mov ecx, edi
push eax
lea eax, [esp + 0x28]
push eax
push esi
call fcn.00b89f40
jmp 0xb910a6
movsx eax, word [eax + 0xa]
mov ecx, edi
push eax
push 0x72
call fcn.00bea390
lea ecx, [esp + 0x50]
call fcn.00b89ce0
jmp case.default.0xbc648f
push dword [esi]
call fcn.00ba193c
add esp, 4
push dword [esi + 0xc]
call fcn.00ba193c
add esp, 4
jmp 0xb910f4
test edx, edx
je case.0xb9128c.6
push edx
call dword [0xc1045c]
push dword [esp + 0x50]
jmp 0xbc6467
test edx, edx
je case.0xb9128c.6
lea ecx, [edx + 8]
jmp 0xbc645e
test edx, edx
je case.0xb9128c.6
push ecx
mov ecx, edx
call fcn.00b88c94
jmp case.0xb9128c.6
push dword [edx + 4]
call fcn.00ba193c
add esp, 4
push dword [esp + 0x50]
jmp 0xbc6467
test edx, edx
je case.0xb9128c.6
push ecx
mov ecx, edx
call fcn.00bd7a34
jmp case.0xb9128c.6
test edx, edx
je case.0xb9128c.6
push ecx
mov ecx, edx
call fcn.00ba036f
jmp case.0xb9128c.6
test edx, edx
je case.0xb9128c.6
mov ecx, edx
call fcn.00b858c4
push dword [esp + 0x14]
call fcn.00ba193c
add esp, 4
jmp case.0xb9128c.6
mov dword [edi + 0xf8], 1
jmp case.default.0xbc648f
sub eax, 3
cmp eax, 3
ja case.default.0xbc648f
jmp dword [eax*4 + 0xbc67bc]
mov ecx, edi
call fcn.00c061d3
jmp 0xbc64c8
mov ecx, edi
call fcn.00c061d3
jmp 0xbc64b1
push 1
mov ecx, edi
call fcn.00b8b87d
mov esi, eax
test esi, esi
js 0xbc64ce
jg case.default.0xbc648f
jmp 0xbc6507
push 1
mov ecx, edi
call fcn.00b8b87d
mov esi, eax
test esi, esi
jns 0xbc64fd
mov eax, esi
neg eax
push 0
push eax
mov eax, dword [edi]
mov ecx, dword [eax + 4]
add ecx, edi
call fcn.00bd70e7
push ecx
lea eax, [esp + 0xc]
mov dword [esp + 0xc], 0
push eax
mov eax, dword [edi]
mov ecx, dword [eax + 4]
add ecx, edi
call fcn.00ba07a4
test esi, esi
je case.default.0xbc648f
test esi, esi
jle 0xbc6580
mov eax, dword [edi + 0xf8]
cmp eax, 5
je 0xbc6517
cmp eax, 3
jne 0xbc6580
mov eax, dword [edi + 0x1f0]
lea ecx, [esp + 0xc8]
mov dword [esp + 0xc8], 0
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 1
mov esi, dword [eax]
call fcn.00b898d0
push 0
lea eax, [esp + 0xcc]
mov dword [esp + 0xd8], 7
push eax
mov eax, dword [edi]
mov dword [esp + 0xd0], esi
mov ecx, dword [eax + 4]
add ecx, edi
call fcn.00bd7094
lea ecx, [esp + 0xc8]
call fcn.00b898d0
mov ecx, dword [edi + 0x2f4]
mov byte [edi + 0x144], 1
mov dword [edi + 0xf8], 0
call fcn.00be5841
jmp case.default.0xbc648f
push 0xa
call dword [0xc1017c]
cmp dword [edi + 0x43c], 0
je 0xbc65de
mov ecx, dword [edi + 0x440]
call fcn.00ba0f74
test edx, edx
jl 0xbc65de
jg 0xbc65cb
cmp eax, dword [edi + 0x43c]
jb 0xbc65de
mov eax, dword [edi + 0x448]
test eax, eax
je 0xbc631d
jmp 0xbc630c
mov eax, dword [edi + 0xf8]
xor esi, esi
mov byte [esp + 0x1f], 0
mov dword [esp + 8], esi
cmp eax, 8
jne 0xbc661c
lea eax, [esp + 0x1f]
push eax
lea ecx, [edi + 0x42c]
lea edx, [esp + 0xc]
call fcn.00be41ef
add esp, 4
cmp byte [esp + 0x1f], 1
jne case.default.0xbc648f
mov esi, dword [esp + 8]
jmp 0xbc6625
cmp eax, 9
jne case.default.0xbc648f
mov ecx, dword [edi + 0x448]
mov eax, 0xcccccccc
mov dword [esp + 0x40], eax
test ecx, ecx
je 0xbc667e
lea eax, [esp + 0x40]
push eax
push ecx
call dword [0xc10290]
cmp dword [esp + 0x40], 0x103
jne 0xbc6664
push 0
push dword [edi + 0x448]
call dword [0xc1016c]
test eax, eax
jne case.default.0xbc648f
push dword [edi + 0x448]
call dword [0xc1035c]
mov eax, dword [esp + 0x40]
mov dword [edi + 0x448], 0
cmp dword [edi + 0xf8], 8
jne 0xbc66b1
mov dword [esp + 8], esi
fild dword [esp + 8]
test esi, esi
jns 0xbc6699
fadd qword [0xc3cad8]
push ecx
lea eax, [esp + 0xc]
push eax
mov eax, dword [edi]
fstp qword [esp + 0x10]
mov ecx, dword [eax + 4]
add ecx, edi
call fcn.00bfcbde
jmp 0xbc66c0
push 0
push eax
mov eax, dword [edi]
mov ecx, dword [eax + 4]
add ecx, edi
call fcn.00ba07f2
push dword [edi + 0x2f4]
mov byte [edi + 0x144], 1
mov dword [edi + 0xf8], 0
call dword [0xc1017c]
jmp case.default.0xbc648f
push ecx
lea eax, [esp + 0x4c]
mov dword [esp + 0x4c], 0
push eax
mov eax, dword [edi]
mov ecx, dword [eax + 4]
add ecx, edi
call fcn.00ba07a4
jmp 0xb90fe4
lea eax, [esp + 0x14c]
push eax
call dword [0xc106ec]
lea eax, [esp + 0x14c]
push eax
call dword [0xc106e8]
push 0
push 0
push 0
lea eax, [esp + 0x158]
push eax
call esi
test eax, eax
jg 0xbc6701
jmp 0xb91001