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

Disassembly:
push 0xffffffffffffffff
push 0x495b77
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1b4
push ebx
push ebp
push esi
mov esi, ecx
xor ebx, ebx
push edi
mov eax, dword [esi + 0x460]
mov dword [esp + 0x3c], ebx
cmp eax, ebx
jne case.0x4330ee.5
mov dword [esi + 0x230], ebx
mov eax, dword [esi + 0x3d4]
cmp eax, ebx
je 0x4330df
mov edi, dword [esi + 0x188]
push 0x4ad110
mov ecx, edi
call fcn.0041fe40
cmp eax, ebx
jge 0x433001
push ebx
push ebx
push ebx
push ebx
lea ecx, [esp + 0x84]
call fcn.004181f0
jmp 0x433007
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edi, dword [eax]
mov ebp, dword [esi + 0x210]
mov dword [esp + 0x2c], edi
mov edx, dword [eax + 4]
mov dword [esp + 0x30], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x34], ecx
mov ecx, dword [esi + 0x450]
mov eax, dword [eax + 0xc]
lea ebx, [ecx + ecx]
mov dword [esp + 0x38], eax
sub eax, ebx
mov ebx, dword [esp + 0x1d8]
add eax, edx
cdq
sub eax, edx
mov edx, ebp
imul edx, ecx
sar eax, 1
add eax, edx
cmp ebx, edi
jl 0x433067
cmp ebx, dword [esp + 0x34]
jge 0x433067
mov edx, dword [esp + 0x1dc]
cmp edx, eax
jl 0x433067
add ecx, eax
cmp edx, ecx
jl 0x434ced
test ebp, ebp
mov eax, 0x4ad268
jne 0x433075
mov eax, 0x4ad278
mov edi, dword [esi + 0x188]
push eax
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x43309d
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x84]
call fcn.004181f0
jmp 0x4330a3
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x50], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x54], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x58], edx
mov eax, dword [eax + 0xc]
push ecx
lea edx, [esp + 0x54]
push ebx
push edx
mov dword [esp + 0x68], eax
call dword [0x4994a4]
test eax, eax
je case.0x4330ee.5
jmp 0x434ced
mov eax, dword [esi + 0xd30]
cmp eax, 0xb
ja case.0x4330ee.5
jmp dword [eax*4 + 0x434d10]
mov edi, dword [esi + 0x184]
push 0x4ad110
mov ecx, edi
call fcn.0041fe40
cmp eax, ebx
jge 0x43311a
push ebx
push ebx
push ebx
push ebx
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x433120
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x2c], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x34], edx
mov eax, dword [eax + 0xc]
lea ecx, [esp + 0x2c]
mov dword [esp + 0x38], eax
push ecx
call dword [0x49948c]
test eax, eax
jne 0x4331a9
mov ecx, dword [esi + 0x450]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x2c]
lea edx, [ecx + ecx*2]
shl edx, 1
sub eax, edx
mov edx, dword [esp + 0x30]
add eax, edx
mov edx, dword [esi + 0x210]
imul edx, ecx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1d8]
cmp edx, edi
jl case.0x4330ee.5
cmp edx, dword [esp + 0x34]
jge case.0x4330ee.5
mov edx, dword [esp + 0x1dc]
cmp edx, eax
jl case.0x4330ee.5
add ecx, eax
cmp edx, ecx
jge case.0x4330ee.5
jmp 0x434ced
mov eax, dword [esi + 0x210]
cmp eax, 0xffffffff
je case.0x4330ee.5
mov edi, dword [esi + 0x184]
mov eax, dword [eax*4 + 0x49a6f4]
push eax
mov ecx, edi
call fcn.0041fe40
cmp eax, ebx
jge 0x4331e0
push ebx
push ebx
push ebx
push ebx
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x4331e6
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x50], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x54], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x58], edx
mov eax, dword [eax + 0xc]
mov edx, dword [esp + 0x1d8]
mov dword [esp + 0x5c], eax
push ecx
lea eax, [esp + 0x54]
push edx
push eax
call dword [0x4994a4]
test eax, eax
je case.0x4330ee.5
jmp 0x434ced
mov ecx, dword [esi + 0x2ac]
mov edx, dword [0x4afb38]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x10], edx
mov edi, dword [esi + 0x194]
push 0x4ad154
mov ecx, edi
mov dword [esp + 0x1d0], ebx
call fcn.0041fe40
cmp eax, ebx
jge 0x433269
push ebx
push ebx
push ebx
push ebx
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x43326f
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x2c], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x34], edx
mov eax, dword [eax + 0xc]
lea ecx, [esp + 0x2c]
mov dword [esp + 0x38], eax
push ecx
call dword [0x49948c]
test eax, eax
jne 0x4332c1
mov eax, dword [esi + 0x2ac]
mov ecx, dword [esi + 0x448]
cdq
idiv dword [esi + 0x2b0]
mov eax, dword [esp + 0x30]
imul edx, ecx
add eax, edx
add ecx, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x38], ecx
jmp 0x433327
mov eax, dword [esi + 0x2ac]
cdq
idiv dword [esi + 0x2b0]
push edx
lea edx, [esp + 0x14]
push 0x4ad148
push edx
call fcn.00483e7d
mov edi, dword [esi + 0x194]
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov ecx, edi
push eax
call fcn.0041fe40
cmp eax, ebx
jge 0x433306
push ebx
push ebx
push ebx
push ebx
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x43330c
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x2c], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x34], edx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x38], eax
mov ebx, dword [esp + 0x1dc]
mov ebp, dword [esp + 0x1d8]
push ebx
lea ecx, [esp + 0x30]
push ebp
push ecx
call dword [0x4994a4]
test eax, eax
je 0x43334d
mov ecx, esi
call fcn.00436a10
mov edi, dword [esi + 0x194]
push 0x4ab5e0
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x433376
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x43337c
mov edx, dword [edi + 0x24]
mov eax, dword [edx + eax*4]
mov ecx, dword [eax]
push ebx
mov dword [esp + 0xa8], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0xac], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0xb0], ecx
mov edx, dword [eax + 0xc]
lea eax, [esp + 0xa8]
push ebp
push eax
mov dword [esp + 0xbc], edx
call dword [0x4994a4]
test eax, eax
je 0x4333cf
mov eax, dword [esi + 0x2ac]
mov ecx, dword [esi + 0x2b0]
cmp eax, ecx
jl 0x4333cf
sub eax, ecx
mov dword [esi + 0x2ac], eax
mov edi, dword [esi + 0x194]
push 0x4ab5dc
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x4333f8
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x4333fe
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
push ebx
mov dword [esp + 0x98], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x9c], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0xa0], edx
mov eax, dword [eax + 0xc]
lea ecx, [esp + 0x98]
push ebp
push ecx
mov dword [esp + 0xac], eax
call dword [0x4994a4]
test eax, eax
je 0x4334a7
mov ecx, dword [esi + 0x2b0]
mov eax, dword [esi + 0x2ac]
mov edi, dword [0x4aa0d8]
lea edx, [ecx + eax]
cmp edx, edi
jge 0x4334a7
cdq
idiv ecx
inc eax
push eax
lea eax, [esp + 0x14]
push 0x4ad210
push eax
call fcn.00483e7d
mov ecx, dword [esi + 0x194]
add esp, 0xc
push 0x4ad310
call fcn.0041fe40
cmp eax, 0xffffffff
je 0x433493
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, dword [esi + 0x194]
call fcn.0041fe40
cmp eax, 0xffffffff
je 0x4334a7
mov edx, dword [esi + 0x2b0]
mov eax, dword [esi + 0x2ac]
add eax, edx
mov dword [esi + 0x2ac], eax
mov edi, dword [esi + 0x194]
push 0x4ac954
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x4334d0
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x4334d6
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
push ebx
mov dword [esp + 0x1b8], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x1bc], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x1c0], edx
mov eax, dword [eax + 0xc]
lea ecx, [esp + 0x1b8]
push ebp
push ecx
mov dword [esp + 0x1cc], eax
call dword [0x4994a4]
test eax, eax
je 0x43351a
push 0
mov ecx, esi
call fcn.00437290
cmp dword [esi + 0xd30], 4
je 0x4335a7
mov edi, dword [esi + 0x194]
push 0x4ac964
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x433550
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x433556
mov edx, dword [edi + 0x24]
mov eax, dword [edx + eax*4]
mov ecx, dword [eax]
push ebx
mov dword [esp + 0x88], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x8c], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x90], ecx
mov edx, dword [eax + 0xc]
lea eax, [esp + 0x88]
push ebp
push eax
mov dword [esp + 0x9c], edx
call dword [0x4994a4]
test eax, eax
je 0x4335a7
push 7
mov ecx, esi
call fcn.00432ac0
test eax, eax
je 0x4335a7
push 4
mov ecx, esi
call fcn.0042df10
cmp dword [esi + 0xd30], 2
je 0x433634
mov edi, dword [esi + 0x194]
push 0x4ac978
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x4335dd
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x4335e3
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
push ebx
mov dword [esp + 0x1a8], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x1ac], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x1b0], edx
mov eax, dword [eax + 0xc]
lea ecx, [esp + 0x1a8]
push ebp
push ecx
mov dword [esp + 0x1bc], eax
call dword [0x4994a4]
test eax, eax
je 0x433634
push 6
mov ecx, esi
call fcn.00432ac0
test eax, eax
je 0x433634
push 2
mov ecx, esi
call fcn.0042df10
cmp dword [esi + 0xd30], 3
je 0x4336c1
mov edi, dword [esi + 0x194]
push 0x4ac970
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x43366a
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x433670
mov edx, dword [edi + 0x24]
mov eax, dword [edx + eax*4]
mov ecx, dword [eax]
push ebx
mov dword [esp + 0xc8], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0xcc], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0xd0], ecx
mov edx, dword [eax + 0xc]
lea eax, [esp + 0xc8]
push ebp
push eax
mov dword [esp + 0xdc], edx
call dword [0x4994a4]
test eax, eax
je 0x4336c1
push 5
mov ecx, esi
call fcn.00432ac0
test eax, eax
je 0x4336c1
push 3
mov ecx, esi
call fcn.0042df10
mov eax, dword [esi + 0x2ac]
xor ebp, ebp
cdq
idiv dword [esi + 0x2b0]
cmp edx, dword [0x4aa0d8]
jge 0x4337a0
push ebp
lea ecx, [esp + 0x14]
push 0x4ad210
push ecx
call fcn.00483e7d
mov edi, dword [esi + 0x194]
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov ecx, edi
push edx
call fcn.0041fe40
test eax, eax
jge 0x433718
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x43371e
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
push ebx
mov dword [esp + 0x148], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x14c], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x150], edx
mov eax, dword [eax + 0xc]
lea edx, [esp + 0x148]
push ecx
push edx
mov dword [esp + 0x15c], eax
call dword [0x4994a4]
test eax, eax
je 0x43377c
mov eax, dword [esi + 0x2ac]
mov ecx, dword [esi + 0x2b0]
cdq
idiv ecx
mov edi, ecx
imul edi, ebp
add edi, edx
mov dword [esi + 0x2ac], edi
mov eax, dword [esi + 0x2ac]
mov ecx, dword [esi + 0x2b0]
cdq
idiv ecx
inc ebp
mov edi, ecx
imul edi, ebp
mov eax, dword [0x4aa0d8]
add edi, edx
cmp edi, eax
jl 0x4336dc
mov eax, dword [esp + 0x28]
mov ecx, dword [esi + 0x2ac]
cmp ecx, eax
je 0x4337c1
mov ecx, esi
call fcn.00429360
push 0x4ad304
mov ecx, esi
call fcn.004420b0
sub esp, 0x10
mov edx, dword [0x4aa0d0]
mov ebx, esp
xor eax, eax
mov edi, dword [0x4aa0d4]
xor ecx, ecx
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov ecx, esi
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edi
call fcn.00402ee0
lea ecx, [esp + 0x10]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
jmp case.0x4330ee.5
xor ebp, ebp
mov dword [esp + 0x28], ebp
lea ecx, [ebp + ebp*4]
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x24], eax
lea edx, [ecx*4 + 0x4ab9b4]
mov dword [esp + 0x40], edx
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
test eax, eax
je 0x433bc1
mov edi, dword [esi + 0x194]
push eax
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x433853
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x433859
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0xe4], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0xe8], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0xec], edx
mov eax, dword [eax + 0xc]
mov edx, dword [esp + 0x1d8]
mov dword [esp + 0xf0], eax
push ecx
lea eax, [esp + 0xe8]
push edx
push eax
call dword [0x4994a4]
test eax, eax
je 0x433a34
cmp ebp, 0x15
ja case.0x4338b7.6
xor ecx, ecx
mov cl, byte [ebp + 0x434d5c]
jmp dword [ecx*4 + 0x434d40]
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x2b8]
cmp ecx, eax
jne 0x433a63
jmp 0x433a34
mov eax, dword [esp + 0x24]
mov ecx, dword [esi + 0x2c4]
cdq
sub eax, edx
sar eax, 1
cmp ecx, eax
jne 0x433a87
jmp 0x433a34
mov edx, dword [esp + 0x10]
mov eax, dword [esi + ebp*4 + 0x2b8]
cmp eax, edx
je 0x433a34
mov eax, edx
push 0x4ab5d0
mov ecx, esi
mov dword [esi + ebp*4 + 0x2b8], eax
call fcn.004420b0
jmp case.0x4338b7.6
mov ecx, dword [ebp*4 + 0x4abda0]
push ecx
lea ecx, [esp + 0x50]
call fcn.00485498
mov edx, dword [esi + 0x34]
lea edi, [esi + 0x34]
lea eax, [esp + 0x4c]
mov ecx, edi
push eax
mov dword [esp + 0x1d0], 1
call dword [edx]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1cc], 0xffffffff
cmp eax, ecx
lea ecx, [esp + 0x4c]
sete bl
call fcn.0048542a
test bl, bl
jne 0x433a34
mov ecx, dword [ebp*4 + 0x4abda0]
push ecx
lea ecx, [esp + 0x48]
call fcn.00485498
mov eax, dword [esp + 0x10]
mov edx, dword [edi]
lea ecx, [esp + 0x44]
push eax
push ecx
mov ecx, edi
mov dword [esp + 0x1d4], 2
call dword [edx + 4]
lea ecx, [esp + 0x44]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
push 0x4ab5d0
mov ecx, esi
call fcn.004420b0
jmp case.0x4338b7.6
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x390], ebp
push eax
call dword [0x4994a0]
mov edx, dword [esp + 0x1dc]
mov eax, dword [esp + 0x1d8]
mov ecx, dword [esp + 0x1d4]
push edx
push eax
push ecx
mov ecx, esi
call fcn.004318d0
cmp ebp, 0x16
jl 0x433b9a
cmp ebp, 0x36
jge 0x433b9a
mov edx, dword [esi + 0xc10]
lea edi, [ebp - 0x16]
mov eax, dword [esp + 0x10]
mov ecx, edi
shr edx, cl
and edx, 1
cmp edx, eax
je 0x433a34
cmp edi, dword [esi + 0x9b0]
jge 0x433acd
push edi
push 3
mov ecx, esi
call fcn.00440cb0
test eax, eax
jne 0x433acd
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x40]
add eax, 0x64
inc ebx
add edi, 4
cmp eax, 0x190
mov dword [esp + 0x10], ebx
mov dword [esp + 0x40], edi
mov dword [esp + 0x24], eax
jae 0x433bc1
jmp 0x433820
mov dword [esi + 0x2b8], eax
mov ecx, dword [esi + 0x28]
cmp eax, ecx
je 0x433a76
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
push 0x4ab5d0
mov ecx, esi
call fcn.004420b0
jmp 0x433b9a
push 0x4ab5d0
mov ecx, esi
mov dword [esi + 0x2c4], eax
call fcn.004420b0
jmp 0x433b9a
mov eax, dword [esi + 0x2ec]
inc eax
and eax, 0x1f
mov dword [esi + 0x2ec], eax
mov ecx, dword [esi + eax*8 + 0xc14]
mov eax, dword [ecx - 8]
test eax, eax
je case.0x4338b7.4
push 0x4ab5d0
mov ecx, esi
call fcn.004420b0
jmp 0x433b9a
mov edx, 1
mov ecx, edi
shl edx, cl
mov ecx, dword [esi + 0xc10]
xor ecx, edx
mov dword [esi + 0xc10], ecx
mov eax, dword [esi + edi*8 + 0xb14]
mov edx, dword [eax - 8]
test edx, edx
mov dword [esp + 0x24], edx
jle 0x433b8a
xor ebp, ebp
lea ebx, [esi + 0xb14]
jmp 0x433b08
mov edx, dword [esp + 0x24]
mov ecx, dword [ebx]
mov eax, dword [ecx - 8]
test eax, eax
je 0x433b7d
cmp ebp, edi
je 0x433b7d
mov eax, dword [esi + edi*8 + 0xb14]
push edx
push ecx
push eax
call fcn.00464cd0
add esp, 0xc
test eax, eax
jne 0x433b4c
mov eax, dword [esi + 0xc10]
mov edx, 1
mov ecx, ebp
shl edx, cl
not edx
and edx, eax
mov eax, dword [esp + 0x10]
shl eax, cl
or edx, eax
mov dword [esi + 0xc10], edx
mov eax, dword [ebx]
mov edx, dword [esi + edi*8 + 0xb14]
mov ecx, dword [eax - 8]
push ecx
push eax
push edx
call fcn.00464cd0
add esp, 0xc
test eax, eax
jne 0x433b7d
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 0xc10]
mov ecx, ebp
shl edx, cl
or eax, edx
mov dword [esi + 0xc10], eax
inc ebp
add ebx, 8
cmp ebp, 0x20
jb 0x433b04
push 0x4ab5d0
mov ecx, esi
call fcn.004420b0
mov ebp, dword [esp + 0x28]
sub esp, 0x10
mov edx, dword [0x4aa0d0]
mov ebx, esp
xor eax, eax
mov edi, dword [0x4aa0d4]
xor ecx, ecx
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov ecx, esi
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edi
call fcn.00402ee0
inc ebp
cmp ebp, 0x36
mov dword [esp + 0x28], ebp
jl 0x433807
mov ebp, dword [esp + 0x1dc]
xor ebx, ebx
mov eax, dword [0x4afb38]
mov dword [esp + 0x10], eax
push ebx
lea ecx, [esp + 0x14]
push 0x4ad210
push ecx
mov dword [esp + 0x1d8], 3
call fcn.00483e7d
mov edi, dword [esi + 0x194]
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov ecx, edi
push edx
call fcn.0041fe40
test eax, eax
jge 0x433c28
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x433c2e
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
push ebp
mov dword [esp + 0x188], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x18c], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x190], edx
mov eax, dword [eax + 0xc]
lea edx, [esp + 0x188]
push ecx
push edx
mov dword [esp + 0x19c], eax
call dword [0x4994a4]
test eax, eax
jne 0x433c93
lea ecx, [esp + 0x10]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
inc ebx
cmp ebx, 0xa
jl 0x433bd8
jmp 0x433d92
test ebx, ebx
mov dword [esi + 0x3a4], ebx
mov eax, str.syste1config_bg.scn
je 0x433ca7
mov eax, str.syste1config_bg_d.scn
push ebx
push eax
lea eax, [esp + 0x18]
push eax
call fcn.00483e7d
mov edi, dword [esi + 0x194]
add esp, 0xc
test edi, edi
je 0x433cd0
mov ecx, edi
call fcn.0041fc20
push edi
call fcn.004859a0
add esp, 4
push 0x4c
call fcn.00485977
mov edi, eax
add esp, 4
mov dword [esp + 0x28], edi
test edi, edi
mov byte [esp + 0x1cc], 4
je 0x433d27
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.0048519f
lea eax, [esp + 0x64]
push eax
call fcn.004013c0
add esp, 8
mov dword [esp + 0x3c], 1
mov eax, dword [eax]
mov ecx, edi
push eax
push esi
mov byte [esp + 0x1d4], 5
call fcn.0041f660
jmp 0x433d29
xor eax, eax
mov dword [esi + 0x194], eax
mov al, byte [esp + 0x3c]
test al, 1
mov dword [esp + 0x1cc], 3
je 0x433d4b
lea ecx, [esp + 0x60]
call fcn.0048542a
sub esp, 0x10
mov edx, dword [0x4aa0d0]
mov ebx, esp
xor eax, eax
mov edi, dword [0x4aa0d4]
xor ecx, ecx
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov ecx, esi
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edi
call fcn.00402ee0
push 0x4ab5bc
mov ecx, esi
call fcn.004420b0
lea ecx, [esp + 0x10]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
mov edi, dword [esi + 0x194]
push 0x4ac978
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x433dbb
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x433dc1
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov ebx, dword [esp + 0x1d8]
mov dword [esp + 0x104], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x108], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x10c], edx
mov eax, dword [eax + 0xc]
push ebp
lea ecx, [esp + 0x108]
push ebx
push ecx
mov dword [esp + 0x11c], eax
call dword [0x4994a4]
test eax, eax
je 0x433e1e
push 6
mov ecx, esi
call fcn.00432ac0
test eax, eax
je 0x433e1e
push 2
mov ecx, esi
call fcn.0042df10
jmp case.0x4330ee.5
mov edi, dword [esi + 0x194]
push 0x4ac970
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x433e47
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x433e4d
mov edx, dword [edi + 0x24]
mov eax, dword [edx + eax*4]
mov ecx, dword [eax]
push ebp
mov dword [esp + 0x168], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x16c], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x170], ecx
mov edx, dword [eax + 0xc]
lea eax, [esp + 0x168]
push ebx
push eax
mov dword [esp + 0x17c], edx
call dword [0x4994a4]
test eax, eax
je 0x433ea3
push 5
mov ecx, esi
call fcn.00432ac0
test eax, eax
je 0x433ea3
push 3
mov ecx, esi
call fcn.0042df10
jmp case.0x4330ee.5
push 0
push 0
push 0xd
mov ecx, esi
call fcn.00435050
jmp case.0x4330ee.5
mov edi, dword [esi + 0x194]
push 0x4ac954
mov ecx, edi
call fcn.0041fe40
cmp eax, ebx
jge 0x433eda
push ebx
push ebx
push ebx
push ebx
lea ecx, [esp + 0x24]
call fcn.004181f0
jmp 0x433ee0
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov ebx, dword [esp + 0x1dc]
mov dword [esp + 0x124], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x128], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1d8]
mov dword [esp + 0x12c], edx
mov eax, dword [eax + 0xc]
push ebx
lea edx, [esp + 0x128]
push ecx
push edx
mov dword [esp + 0x13c], eax
call dword [0x4994a4]
test eax, eax
je 0x433f32
push 0
mov ecx, esi
call fcn.00437290
xor ebp, ebp
mov eax, dword [0x4afb38]
mov dword [esp + 0x10], eax
push ebp
lea ecx, [esp + 0x14]
push 0x4ad210
push ecx
mov dword [esp + 0x1d8], 7
call fcn.00483e7d
mov edi, dword [esi + 0x194]
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov ecx, edi
push edx
call fcn.0041fe40
test eax, eax
jge 0x433f89
xor edi, edi
lea eax, [esp + 0x14]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], edi
jmp 0x433f91
mov ecx, dword [edi + 0x24]
xor edi, edi
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
push ebx
mov dword [esp + 0xb8], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0xbc], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0xc0], edx
mov eax, dword [eax + 0xc]
lea edx, [esp + 0xb8]
push ecx
push edx
mov dword [esp + 0xcc], eax
call dword [0x4994a4]
test eax, eax
jne 0x433ff6
lea ecx, [esp + 0x10]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
inc ebp
cmp ebp, 0xa
jl 0x433f34
jmp case.0x4330ee.5
cmp ebp, edi
mov dword [esi + 0x3a4], ebp
mov eax, str.syste1_status_bg.scn
je 0x43400a
mov eax, str.syste1_status_bg_d.scn
push ebp
push eax
lea eax, [esp + 0x18]
push eax
call fcn.00483e7d
mov edi, dword [esi + 0x194]
add esp, 0xc
test edi, edi
je 0x434033
mov ecx, edi
call fcn.0041fc20
push edi
call fcn.004859a0
add esp, 4
push 0x4c
call fcn.00485977
mov edi, eax
add esp, 4
mov dword [esp + 0x28], edi
test edi, edi
mov byte [esp + 0x1cc], 8
je 0x43408a
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.0048519f
lea eax, [esp + 0x68]
push eax
call fcn.004013c0
add esp, 8
mov dword [esp + 0x3c], 2
mov eax, dword [eax]
mov ecx, edi
push eax
push esi
mov byte [esp + 0x1d4], 9
call fcn.0041f660
jmp 0x43408c
xor eax, eax
mov dword [esi + 0x194], eax
mov al, byte [esp + 0x3c]
test al, 2
mov dword [esp + 0x1cc], 7
je 0x4340ae
lea ecx, [esp + 0x64]
call fcn.0048542a
sub esp, 0x10
mov edx, dword [0x4aa0d0]
mov ebx, esp
xor eax, eax
mov edi, dword [0x4aa0d4]
xor ecx, ecx
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov ecx, esi
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edi
call fcn.00402ee0
push 0x4ab5bc
mov ecx, esi
call fcn.004420b0
lea ecx, [esp + 0x10]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
jmp case.0x4330ee.5
mov ecx, dword [0x4afb38]
mov dword [esp + 0x24], ecx
mov edx, dword [esi + 0x394]
mov edi, dword [esi + 0x398]
sub edx, edi
lea eax, [esp + 0x24]
push edx
push 0x4ad24c
push eax
mov dword [esp + 0x1d8], 0xb
call fcn.00483e7d
mov ecx, dword [esp + 0x30]
mov edi, dword [esi + 0x198]
add esp, 0xc
push ecx
mov ecx, edi
call fcn.0041fe40
cmp eax, ebx
jge 0x43415c
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
lea eax, [esp + 0x14]
jmp 0x434162
mov edx, dword [edi + 0x24]
mov eax, dword [edx + eax*4]
mov ecx, dword [eax]
mov ebx, dword [esp + 0x1dc]
mov dword [esp + 0xd4], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0xd8], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0xdc], ecx
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x1d8]
push ebx
lea ecx, [esp + 0xd8]
push eax
push ecx
mov dword [esp + 0xec], edx
call dword [0x4994a4]
test eax, eax
je 0x4341b2
mov ecx, esi
call fcn.00436a10
lea ecx, [esp + 0x24]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
mov edi, dword [esi + 0x198]
push 0x4aaf28
mov ecx, edi
call fcn.0041fe40
xor ebp, ebp
cmp eax, ebp
jge 0x4341f4
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
lea eax, [esp + 0x14]
jmp 0x4341fa
mov edx, dword [edi + 0x24]
mov eax, dword [edx + eax*4]
mov ecx, dword [eax]
push ebx
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x38], ecx
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x1dc]
lea ecx, [esp + 0x30]
push eax
push ecx
mov dword [esp + 0x44], edx
call dword [0x4994a4]
test eax, eax
je 0x434377
mov ebp, dword [esi + 0x7f8]
mov edx, dword [esi + 0x39c]
cmp ebp, edx
jle 0x434375
mov edi, dword [esp + 0x34]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
sub edi, eax
lea eax, [edi + ecx]
cmp ebx, eax
jge 0x434276
mov eax, dword [esi + 0x398]
xor ecx, ecx
dec eax
test eax, eax
setle cl
dec ecx
and eax, ecx
mov dword [esi + 0x398], eax
jmp 0x434347
mov eax, dword [esp + 0x38]
mov ebx, eax
sub ebx, edi
cmp dword [esp + 0x1dc], ebx
jl 0x4342a1
mov eax, dword [esi + 0x398]
sub ebp, edx
inc eax
cmp eax, ebp
jl 0x434296
mov eax, ebp
mov dword [esi + 0x398], eax
jmp 0x434347
lea edx, [edi + edi]
sub eax, edx
mov ebx, eax
sub ebx, ecx
mov ecx, dword [esi + 0x398]
mov eax, ebx
imul eax, ecx
cdq
idiv ebp
mov edx, dword [esp + 0x30]
add eax, edi
add eax, edx
mov edx, dword [esp + 0x1dc]
cmp edx, eax
jge 0x4342e6
mov ebp, dword [esi + 0x39c]
xor eax, eax
sub ecx, ebp
inc ecx
test ecx, ecx
setle al
dec eax
and eax, ecx
mov dword [esi + 0x398], eax
jmp 0x434347
mov eax, dword [esi + 0x39c]
add eax, ecx
mov dword [esp + 0x28], eax
imul eax, ebx
cdq
idiv ebp
mov edx, dword [esp + 0x1dc]
add eax, edi
mov edi, dword [esp + 0x30]
add eax, edi
cmp edx, eax
jl 0x43431d
mov eax, dword [esp + 0x28]
mov edx, dword [esi + 0x39c]
dec eax
sub ebp, edx
jmp 0x434290
mov edx, dword [esp + 0x1d8]
mov eax, dword [esp + 0x1dc]
mov dword [esi + 0x3a0], ecx
mov ecx, dword [esi + 0x1c]
mov dword [esi + 0x3b4], edx
push ecx
mov dword [esi + 0x3b8], eax
call dword [0x4994a0]
sub esp, 0x10
mov edx, dword [0x4aa0d0]
mov ebx, esp
xor eax, eax
mov edi, dword [0x4aa0d4]
xor ecx, ecx
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov ecx, esi
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edi
call fcn.00402ee0
mov ebx, dword [esp + 0x1dc]
xor ebp, ebp
mov edi, dword [esi + 0x198]
push 0x4ac954
mov ecx, edi
call fcn.0041fe40
cmp eax, ebp
jge 0x4343a3
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
lea eax, [esp + 0x14]
jmp 0x4343a9
mov edx, dword [edi + 0x24]
mov eax, dword [edx + eax*4]
mov ecx, dword [eax]
push ebx
mov dword [esp + 0xf8], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0xfc], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x100], ecx
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x1dc]
lea ecx, [esp + 0xf8]
push eax
push ecx
mov dword [esp + 0x10c], edx
call dword [0x4994a4]
test eax, eax
je case.0x4330ee.5
push ebp
mov ecx, esi
call fcn.00437290
jmp case.0x4330ee.5
mov eax, dword [esi + 0x1b4]
mov ebp, dword [0x4994a4]
xor ebx, ebx
cmp eax, ebx
je 0x434704
cmp dword [0x4bb080], ebx
je 0x43470c
push 0x4ad2d0
lea ecx, [esp + 0x4c]
call fcn.00485498
mov edx, dword [esi + 0x34]
lea ecx, [esi + 0x34]
lea eax, [esp + 0x48]
mov dword [esp + 0x1cc], 0xc
push eax
call dword [edx]
cmp eax, 0x50
lea ecx, [esp + 0x48]
setge bl
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
test bl, bl
je 0x434704
mov eax, dword [0x4bb088]
test eax, eax
jge 0x434704
mov eax, dword [esi + 0x1c0]
test eax, eax
jne 0x434704
mov edi, dword [esi + 0x1b4]
push 0x4ad2c4
mov ecx, edi
call fcn.0041fe40
xor ecx, ecx
cmp eax, ecx
jge 0x4344af
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
lea eax, [esp + 0x14]
jmp 0x4344b5
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x114], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x118], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x11c], edx
mov eax, dword [eax + 0xc]
mov edx, dword [esp + 0x1d8]
mov dword [esp + 0x120], eax
push ecx
lea eax, [esp + 0x118]
push edx
push eax
call dword [0x4994a4]
test eax, eax
je 0x434704
mov eax, dword [esi + 0xd2c]
cmp eax, 4
je 0x43455f
cmp eax, 0xd
je 0x43455f
mov ecx, dword [esi + 0x1f8]
test ecx, ecx
je 0x434704
mov edx, dword [ecx]
mov edi, str.IconSelect
call dword [edx + 0x2c]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x434552
test cl, cl
je 0x43454e
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x434552
add eax, 2
add edi, 2
test cl, cl
jne 0x43452a
xor eax, eax
jmp 0x434557
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x434704
push 0xfffffffffffffffd
mov ecx, esi
call fcn.00423bd0
xor ebx, ebx
mov ecx, esi
push ebx
call fcn.0042d9f0
mov dword [0x4bb080], ebx
mov eax, dword [esi + 0x8c]
cmp eax, ebx
je 0x434588
mov eax, dword [eax]
cmp eax, ebx
jne 0x434582
mov ecx, dword [esi + 0x9c]
mov dword [esi + 0x94], ebx
mov dword [esi + 0x98], ebx
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], ebx
call fcn.004845c5
mov dword [esi + 0x9c], ebx
mov edi, dword [esi + 0xa8]
cmp edi, ebx
je 0x4345da
mov eax, edi
mov edi, dword [edi]
mov ebp, dword [eax + 8]
test ebp, ebp
je 0x4345d6
mov ecx, ebp
call fcn.0040cd60
push ebp
call fcn.004859a0
add esp, 4
test edi, edi
jne 0x4345bb
mov ebp, dword [esi + 0xa8]
test ebp, ebp
je 0x434628
lea edi, [ebp + 8]
xor ebx, ebx
mov dword [esp + 0x28], edi
lea ecx, [edi + 0x10]
mov dword [esp + 0x1cc], 0xd
call fcn.0048542a
lea ecx, [edi + 0xc]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
add edi, 0x18
mov eax, ebx
dec ebx
mov dword [esp + 0x28], edi
test eax, eax
jne 0x4345ed
mov ebp, dword [ebp]
test ebp, ebp
jne 0x4345e4
mov ecx, dword [esi + 0xb8]
xor edi, edi
mov dword [esi + 0xb0], edi
mov dword [esi + 0xb4], edi
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edi
call fcn.004845c5
mov dword [esi + 0xb8], edi
mov ebx, dword [esi + 0x38]
cmp ebx, edi
je 0x43466a
mov ecx, ebx
call fcn.0040cd60
push ebx
call fcn.004859a0
add esp, 4
push ecx
mov dword [esi + 0x38], edi
mov ecx, esp
mov dword [esp + 0x2c], esp
push ecx
mov dword [esi + 0x80], edi
call fcn.00401730
add esp, 4
lea edx, [esp + 0x70]
push edx
call fcn.00401080
add esp, 8
lea ecx, [esp + 0x6c]
call fcn.0048542a
push 1
push edi
push ecx
mov ecx, esi
mov eax, esp
mov dword [esp + 0x34], esp
push 0x4ba4a8
push 0x4ad2b0
push eax
call fcn.0042d790
lea ecx, [esp + 0x7c]
push ecx
call fcn.004013c0
add esp, 8
mov ecx, eax
mov dword [esp + 0x1d4], 0xe
call fcn.0040a270
push eax
mov ecx, esi
call fcn.00423240
lea ecx, [esp + 0x70]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
mov ecx, esi
call fcn.00431850
push edi
mov ecx, esi
call fcn.0042d9f0
jmp case.0x4330ee.5
mov ebp, dword [0x4994a4]
xor ebx, ebx
mov eax, dword [esi + 0x1b4]
cmp eax, ebx
je 0x4347ca
cmp dword [0x4bb080], ebx
je 0x4347ca
mov ecx, dword [eax + 0x28]
xor edi, edi
cmp ecx, ebx
jle 0x4347a0
cmp edi, ebx
jge 0x434749
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
lea eax, [esp + 0x14]
jmp 0x43474f
mov edx, dword [eax + 0x24]
mov eax, dword [edx + edi*4]
mov ecx, dword [eax]
mov dword [esp + 0x134], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x138], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x13c], ecx
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x1dc]
mov ecx, dword [esp + 0x1d8]
mov dword [esp + 0x140], edx
push eax
lea edx, [esp + 0x138]
push ecx
push edx
call ebp
test eax, eax
jne 0x4347a0
mov eax, dword [esi + 0x1b4]
inc edi
cmp edi, dword [eax + 0x28]
jl 0x43472f
mov ecx, dword [esi + 0x1b4]
cmp edi, dword [ecx + 0x28]
jge 0x4348e2
mov eax, dword [esi + 0x1b8]
cmp ecx, eax
jne 0x4347bf
mov eax, dword [esi + 0x1bc]
mov dword [esi + 0x1b4], eax
jmp 0x43493f
cmp dword [0x4bb004], ebx
je 0x4347dd
mov dword [0x4bb004], ebx
jmp 0x43493f
cmp dword [0x4bb000], ebx
je 0x4348e2
mov edi, dword [0x4bafd0]
cmp edi, ebx
je 0x4348e2
cmp dword [0x4bb084], ebx
jne 0x4348e2
cmp dword [0x4bab90], ebx
jne 0x4348e2
push 0x4ad2a8
mov ecx, edi
call fcn.0041fe40
cmp eax, ebx
jge 0x434835
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
lea eax, [esp + 0x14]
jmp 0x43483b
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x154], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x158], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x15c], edx
mov eax, dword [eax + 0xc]
mov edx, dword [esp + 0x1d8]
mov dword [esp + 0x160], eax
push ecx
lea eax, [esp + 0x158]
push edx
push eax
call ebp
test eax, eax
je 0x4348e2
mov eax, dword [esi + 0xd2c]
cmp eax, 2
je 0x4348d6
cmp eax, 3
je 0x4348d6
cmp eax, 4
je 0x4348d6
mov ecx, dword [esi + 0x1f8]
cmp ecx, ebx
je 0x4348e2
mov edx, dword [ecx]
mov edi, str.IconSelect
call dword [edx + 0x2c]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [edi]
jne 0x4348cd
test cl, cl
je 0x4348c9
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [edi + 1]
jne 0x4348cd
add eax, 2
add edi, 2
test cl, cl
jne 0x4348a9
xor eax, eax
jmp 0x4348d2
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4348e2
mov dword [0x4bb004], 1
jmp 0x43493f
mov ecx, dword [esi + 0x1f8]
cmp ecx, ebx
je 0x43490e
mov edx, dword [esp + 0x1dc]
mov eax, dword [ecx]
push edx
mov edx, dword [esp + 0x1dc]
push edx
mov edx, dword [esp + 0x1dc]
push edx
call dword [eax + 0x14]
jmp case.0x4330ee.5
mov eax, dword [esi + 0x3c8]
mov ecx, esi
cmp eax, ebx
je 0x434924
call fcn.004311c0
jmp case.0x4330ee.5
call fcn.00441070
test eax, eax
je 0x43496b
push 0x4ab5d0
mov ecx, esi
mov dword [esi + 0x238], ebx
call fcn.004420b0
sub esp, 0x10
mov edx, dword [0x4aa0d0]
mov ebx, esp
xor eax, eax
mov edi, dword [0x4aa0d4]
xor ecx, ecx
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov ecx, esi
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edi
call fcn.00402ee0
jmp case.0x4330ee.5
cmp dword [esi + 0x244], ebx
jne 0x434a18
mov eax, dword [esi + 0x264]
test eax, eax
je 0x434a18
xor ebx, ebx
mov ebp, 0x49a72c
mov edi, dword [esi + 0x138]
mov eax, dword [ebp]
push eax
mov ecx, edi
call fcn.0041fe40
test eax, eax
jge 0x4349b9
xor eax, eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
lea eax, [esp + 0x14]
jmp 0x4349bf
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x174], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x178], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x17c], edx
mov eax, dword [eax + 0xc]
mov edx, dword [esp + 0x1d8]
mov dword [esp + 0x180], eax
push ecx
lea eax, [esp + 0x178]
push edx
push eax
call dword [0x4994a4]
test eax, eax
jne 0x434a58
add ebp, 0x10
inc ebx
cmp ebp, 0x49a7fc
jb 0x43498c
mov eax, dword [esi + 0x244]
test eax, eax
je 0x434a73
sub esp, 0x10
mov edx, dword [0x4aa0d0]
mov ebx, esp
xor eax, eax
mov edi, dword [0x4aa0d4]
xor ecx, ecx
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov ecx, esi
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edi
call fcn.00402ee0
mov dword [esi + 0x244], 0
jmp case.0x4330ee.5
cmp ebx, 0xd
jae 0x434a18
shl ebx, 4
mov ecx, dword [ebx + 0x49a728]
push ecx
mov ecx, esi
call fcn.00432d40
jmp case.0x4330ee.5
mov eax, dword [esi + 0xd2c]
sub eax, 4
je 0x434ad1
dec eax
jne 0x434ced
mov eax, dword [esi + 0x20c]
cmp eax, 0xffffffff
je case.0x4330ee.5
cmp eax, dword [esi + 0x830]
jge 0x434ac1
test eax, eax
jl 0x434ac1
mov ecx, dword [esi + 0x828]
mov edx, eax
dec eax
test edx, edx
je 0x434ac3
inc eax
mov ecx, dword [ecx]
dec eax
jne 0x434aae
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x214], eax
jmp case.0x4330ee.5
xor ecx, ecx
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x214], eax
jmp case.0x4330ee.5
mov eax, dword [esi + 0x20c]
test eax, eax
jl case.0x4330ee.5
mov edi, dword [esi + 0x13c]
push 0x4ad110
mov ecx, edi
call fcn.0041fe40
xor ecx, ecx
cmp eax, ecx
jge 0x434b0d
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
lea eax, [esp + 0x14]
jmp 0x434b13
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esi + 0x814]
mov edi, dword [eax]
mov dword [esp + 0x28], ecx
mov ecx, dword [esi + 0x450]
mov ebx, ecx
mov dword [esp + 0x2c], edi
imul ebx, dword [esp + 0x28]
mov edx, dword [eax + 4]
mov dword [esp + 0x30], edx
mov ebp, dword [eax + 8]
mov dword [esp + 0x34], ebp
mov eax, dword [eax + 0xc]
mov dword [esp + 0x38], eax
sub eax, ebx
add eax, edx
mov ebx, dword [esp + 0x1d8]
cdq
sub eax, edx
mov edx, ecx
imul edx, dword [esi + 0x20c]
sar eax, 1
add eax, edx
cmp ebx, edi
jl 0x434b80
cmp ebx, ebp
jge 0x434b80
mov edx, dword [esp + 0x1dc]
cmp edx, eax
jl 0x434b80
add ecx, eax
cmp edx, ecx
jge 0x434b80
mov ecx, esi
call fcn.00436a10
mov eax, dword [0x4afb38]
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 0x20c]
lea edx, [esp + 0x24]
push ecx
push 0x4ad238
push edx
mov dword [esp + 0x1d8], 0xf
call fcn.00483e7d
mov edi, dword [esi + 0x13c]
mov eax, dword [esp + 0x30]
add esp, 0xc
mov ecx, edi
push eax
call fcn.0041fe40
xor ebp, ebp
cmp eax, ebp
jge 0x434bdb
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
lea eax, [esp + 0x14]
jmp 0x434be1
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x194], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x198], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x19c], edx
mov eax, dword [eax + 0xc]
push ecx
lea edx, [esp + 0x198]
push ebx
push edx
mov dword [esp + 0x1ac], eax
call dword [0x4994a4]
test eax, eax
je 0x434c2a
mov ecx, esi
call fcn.00436a10
lea ecx, [esp + 0x24]
mov dword [esp + 0x1cc], 0xffffffff
call fcn.0048542a
mov eax, dword [esi + 0x20c]
mov ecx, dword [esi + 0x814]
cmp eax, ecx
jge 0x434c67
cmp eax, ebp
jl 0x434c67
mov ecx, dword [esi + 0x80c]
mov edx, eax
dec eax
test edx, edx
je 0x434c69
inc eax
mov ecx, dword [ecx]
dec eax
jne 0x434c60
jmp 0x434c69
xor ecx, ecx
add ecx, 8
lea eax, [esp + 0x68]
push ecx
push 0x4ad224
push eax
call fcn.004856e7
mov eax, dword [eax]
mov edi, dword [esi + 0x13c]
push eax
mov ecx, edi
call fcn.0041fe40
cmp eax, ebp
jge 0x434ca6
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
lea eax, [esp + 0x14]
jmp 0x434cac
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx + eax*4]
mov edx, dword [eax]
mov dword [esp + 0x74], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x78], ecx
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x7c], edx
mov eax, dword [eax + 0xc]
push ecx
lea edx, [esp + 0x78]
push ebx
push edx
mov dword [esp + 0x8c], eax
call dword [0x4994a4]
lea ecx, [esp + 0x68]
mov edi, eax
call fcn.0048542a
cmp edi, ebp
je case.0x4330ee.5
mov ecx, esi
call fcn.00436a10
mov ecx, dword [esp + 0x1c4]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x1c0
ret 0xc