Function at 0x407720
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x498428
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x24
push ebx
xor ebx, ebx
push esi
push edi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], ebx
mov esi, dword [esp + 0x40]
cmp dword [esi + 0xc8], ebx
mov dword [esp + 0x38], ebx
jne 0x40775d
cmp dword [esi + 0xcc], ebx
je 0x40776b
push 0x20000
lea ecx, [esp + 0x24]
call fcn.0047be00
mov edi, dword [esi + 0xb8]
call fcn.00433df0
fstp qword [esp + 0x28]
push esi
call fcn.004020b0
push edi
push str.first_t__d_n
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], ebx
call fcn.00433c50
add esp, 0xc
cmp edi, ebx
je 0x40b4b9
cmp dword [edi + 0x18], 0
mov eax, dword [0x4b0228]
push ebp
mov dword [esp + 0x18], eax
jne 0x40a1d0
test eax, eax
je 0x40b4b8
lea ebx, [ebx]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
lea esi, [ecx + eax + 0x10]
movzx eax, byte [edi + 0x1d]
cmp eax, 0x83
lea ebp, [esi + edx*4]
ja case.0x4077e0.64
jmp dword [eax*4 + 0x40b538]
cmp esi, ebp
je case.0x4077e0.64
nop
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00404fb0
add esp, 0x10
test eax, eax
je 0x40783a
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4077f0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov edi, edi
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403010
add esp, 0x10
test eax, eax
je 0x407898
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407850
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00404ab0
add esp, 0x10
test eax, eax
je 0x4078fa
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4078b0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov edi, edi
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403110
add esp, 0x10
test eax, eax
je 0x407958
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407910
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00404ef0
add esp, 0x10
test eax, eax
je 0x4079b8
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407970
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403080
add esp, 0x10
test eax, eax
je 0x407a18
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4079d0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.004049a0
add esp, 0x10
test eax, eax
je 0x407a78
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407a30
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.004031e0
add esp, 0x10
test eax, eax
je 0x407ad8
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407a90
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404fb0
add esp, 0x1c
test eax, eax
je 0x407b4d
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407af0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403010
add esp, 0x1c
test eax, eax
je 0x407bbe
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407b61
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404ab0
add esp, 0x1c
test eax, eax
je 0x407c2f
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407bd2
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403110
add esp, 0x1c
test eax, eax
je 0x407ca0
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407c43
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404ef0
add esp, 0x1c
test eax, eax
je 0x407d11
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407cb4
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x407d30
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403080
add esp, 0x1c
test eax, eax
je 0x407d8d
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407d30
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004049a0
add esp, 0x1c
test eax, eax
je 0x407dfe
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407da1
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004031e0
add esp, 0x1c
test eax, eax
je 0x407e6f
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407e12
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00404fb0
add esp, 0x10
test eax, eax
jne 0x407ecd
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407e83
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403010
add esp, 0x10
test eax, eax
jne 0x407f29
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407ee1
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea ecx, [ecx]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00404ab0
add esp, 0x10
test eax, eax
jne 0x407f8a
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407f40
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov edi, edi
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403110
add esp, 0x10
test eax, eax
jne 0x407fe8
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x407fa0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00404ef0
add esp, 0x10
test eax, eax
jne 0x408048
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408000
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403080
add esp, 0x10
test eax, eax
jne 0x4080a8
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408060
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.004049a0
add esp, 0x10
test eax, eax
jne 0x408108
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4080c0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.004031e0
add esp, 0x10
test eax, eax
jne 0x408168
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408120
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404fb0
add esp, 0x1c
test eax, eax
jne 0x4081dd
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408180
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403010
add esp, 0x1c
test eax, eax
jne 0x40824e
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4081f1
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404ab0
add esp, 0x1c
test eax, eax
jne 0x4082bf
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408262
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403110
add esp, 0x1c
test eax, eax
jne 0x408330
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4082d3
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404ef0
add esp, 0x1c
test eax, eax
jne 0x4083a1
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408344
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x4083c0
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403080
add esp, 0x1c
test eax, eax
jne 0x40841d
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4083c0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004049a0
add esp, 0x1c
test eax, eax
jne 0x408492
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408431
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x4084b0
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004031e0
add esp, 0x1c
test eax, eax
jne 0x408511
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4084b0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408530
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.004046e0
add esp, 0x10
test eax, eax
je 0x40857e
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408530
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00452440
add esp, 0x10
test eax, eax
je 0x4085e0
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408592
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00404590
add esp, 0x10
test eax, eax
je 0x408640
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4085f4
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.004523a0
add esp, 0x10
test eax, eax
je 0x4086a2
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408654
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x4086c0
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004046e0
add esp, 0x1c
test eax, eax
je 0x408721
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4086c0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408740
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00452440
add esp, 0x1c
test eax, eax
je 0x4087a1
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408740
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x4087c0
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404590
add esp, 0x1c
test eax, eax
je 0x408821
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4087c0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408840
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004523a0
add esp, 0x1c
test eax, eax
je 0x40889d
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408840
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.004046e0
add esp, 0x10
test eax, eax
jne 0x4088ff
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4088b1
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00452440
add esp, 0x10
test eax, eax
jne 0x408961
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408913
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408980
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00404590
add esp, 0x10
test eax, eax
jne 0x4089cc
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408980
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.004523a0
add esp, 0x10
test eax, eax
jne 0x408a2e
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4089e0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004046e0
add esp, 0x1c
test eax, eax
jne 0x408aa3
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408a42
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408ac0
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00452440
add esp, 0x1c
test eax, eax
jne 0x408b21
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408ac0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408b40
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404590
add esp, 0x1c
test eax, eax
jne 0x408ba1
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408b40
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408bc0
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004523a0
add esp, 0x1c
test eax, eax
jne 0x408c21
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408bc0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408c40
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00405220
add esp, 0x10
test eax, eax
je 0x408c8e
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408c40
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.004032e0
add esp, 0x10
test eax, eax
je 0x408cee
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408ca2
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403570
add esp, 0x10
test eax, eax
je 0x408d4e
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408d02
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403570
add esp, 0x10
test eax, eax
je 0x408dae
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408d62
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00405220
add esp, 0x1c
test eax, eax
je 0x408e23
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408dc2
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408e40
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004032e0
add esp, 0x1c
test eax, eax
je 0x408ea1
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408e40
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408ec0
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403570
add esp, 0x1c
test eax, eax
je 0x408f21
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408ec0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408f40
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403570
add esp, 0x1c
test eax, eax
je 0x408fa1
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408f40
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x408fc0
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov edx, dword [edi + 4]
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [edi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00405220
add esp, 0x10
test eax, eax
jne 0x40900e
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x408fc0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.004032e0
add esp, 0x10
test eax, eax
jne 0x40906e
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409022
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403570
add esp, 0x10
test eax, eax
jne 0x4090ce
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409082
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403570
add esp, 0x10
test eax, eax
jne 0x40912e
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4090e2
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00405220
add esp, 0x1c
test eax, eax
jne 0x4091a3
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409142
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x4091c0
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004032e0
add esp, 0x1c
test eax, eax
jne 0x409221
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4091c0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409240
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403570
add esp, 0x1c
test eax, eax
jne 0x4092a1
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409240
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x4092c0
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403570
add esp, 0x1c
test eax, eax
jne 0x409321
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4092c0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409340
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
mov ebx, dword [edi]
lea edx, [eax + 0xd]
mov eax, dword [edi + 4]
cmp eax, ecx
jg 0x40939b
push eax
push edx
push eax
push ebx
call fcn.00403730
add esp, 0x10
neg eax
sbb eax, eax
add eax, 1
je 0x40939b
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409340
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
nop
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.004035b0
add esp, 0x10
test eax, eax
je 0x4093fc
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4093b0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403600
add esp, 0x10
test eax, eax
je 0x40945c
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409410
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
movzx edx, byte [ebx + 0xc]
push eax
push ecx
push edx
lea eax, [ebx + 0xd]
push eax
call fcn.00403600
add esp, 0x10
test eax, eax
je 0x4094bc
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409470
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edx, dword [edi + 4]
mov ebx, dword [edi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edx, ecx
jg 0x409541
push edx
push eax
push edx
push ebx
call fcn.00403730
add esp, 0x10
neg eax
sbb eax, eax
add eax, 1
je 0x409541
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4094d0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409560
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004035b0
add esp, 0x1c
test eax, eax
je 0x4095c1
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409560
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x4095e0
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403600
add esp, 0x1c
test eax, eax
je 0x409641
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4095e0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409660
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403600
add esp, 0x1c
test eax, eax
je 0x4096c1
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409660
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x4096e0
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
mov ebx, dword [edi]
lea edx, [eax + 0xd]
mov eax, dword [edi + 4]
cmp eax, ecx
jg 0x409721
push eax
push edx
push eax
push ebx
call fcn.00403730
add esp, 0x10
neg eax
sbb eax, eax
add eax, 1
jne 0x40973b
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4096e0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
nop
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov ebx, dword [esi]
mov edx, dword [edi + 4]
mov eax, dword [edi]
movzx ecx, byte [ebx + 0xc]
push edx
push eax
push ecx
lea edx, [ebx + 0xd]
push edx
call fcn.004035b0
add esp, 0x10
test eax, eax
jne 0x40979c
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409750
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov ebx, dword [esi]
mov edx, dword [edi + 4]
mov eax, dword [edi]
movzx ecx, byte [ebx + 0xc]
push edx
push eax
push ecx
lea edx, [ebx + 0xd]
push edx
call fcn.00403600
add esp, 0x10
test eax, eax
jne 0x4097fc
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x4097b0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov ebx, dword [esi]
mov edx, dword [edi + 4]
mov eax, dword [edi]
movzx ecx, byte [ebx + 0xc]
push edx
push eax
push ecx
lea edx, [ebx + 0xd]
push edx
call fcn.00403600
add esp, 0x10
test eax, eax
jne 0x40985c
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409810
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edx, dword [edi + 4]
mov ebx, dword [edi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edx, ecx
jg 0x4098c7
push edx
push eax
push edx
push ebx
call fcn.00403730
add esp, 0x10
neg eax
sbb eax, eax
add eax, 1
jne 0x4098e1
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409870
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409900
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004035b0
add esp, 0x1c
test eax, eax
jne 0x409961
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409900
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409980
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403600
add esp, 0x1c
test eax, eax
jne 0x4099e1
mov ecx, dword [esi]
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x18]
push eax
push ecx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409980
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409a00
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 4]
mov ecx, dword [edi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00403600
add esp, 0x1c
test eax, eax
jne 0x409a61
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409a00
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409a80
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov ebx, dword [esi]
movzx eax, byte [ebx + 0xc]
push eax
lea ecx, [ebx + 0xd]
push ecx
call fcn.004051f0
add esp, 8
test eax, eax
je 0x409ac5
mov ecx, dword [esp + 0x44]
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x18]
push eax
push ebx
push ecx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409a80
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x184]
test eax, eax
jne 0x40b4b8
mov ebx, dword [esi]
movzx ecx, byte [ebx + 0xc]
push ecx
lea edx, [ebx + 0xd]
push edx
call fcn.004051f0
add esp, 8
test eax, eax
jne 0x409b25
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409ae0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ebx, dword [esp + 0x44]
lea ecx, [ecx]
mov eax, dword [ebx + 0x184]
test eax, eax
jne 0x40b4b8
mov eax, dword [esi]
mov ebx, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push eax
push ebx
call fcn.00401f60
add esi, 4
add esp, 0x10
cmp esi, ebp
jne 0x409b40
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
mov edx, dword [esp + 0x24]
push ecx
add eax, 0xd
push eax
mov eax, dword [esp + 0x30]
push edx
push eax
call fcn.00402f90
mov ecx, dword [esp + 0x38]
mov edx, dword [edi + 8]
push 0
push 0
push 0
push ecx
push edx
call fcn.00481f70
add esp, 0x24
test eax, eax
jne 0x409be5
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409b80
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov byte [ecx + eax - 1], dl
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
add eax, 0xffffffff
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 8]
push 0
push 0
push 0
push eax
push edx
call fcn.00481f70
add esp, 0x20
test eax, eax
jne 0x409c68
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409c00
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
movzx ecx, byte [eax + 0xc]
mov edx, dword [esp + 0x24]
push ecx
add eax, 0xd
push eax
mov eax, dword [esp + 0x30]
push edx
push eax
call fcn.00402f90
mov ecx, dword [esp + 0x38]
mov edx, dword [edi + 8]
push 0
push 0
push 0
push ecx
push edx
call fcn.00481f70
add esp, 0x24
test eax, eax
je 0x409ce5
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409c80
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov byte [ecx + eax - 1], dl
mov edx, dword [esi]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
add eax, 0xffffffff
push eax
push ecx
call fcn.00407460
mov edx, dword [edi + 8]
push 0
push 0
push 0
push eax
push edx
call fcn.00481f70
add esp, 0x20
test eax, eax
je 0x409d68
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409d00
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
push eax
call fcn.00430ab0
add esp, 4
test eax, eax
je 0x409dbf
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409d80
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [esi]
push eax
call fcn.00430ab0
add esp, 4
test eax, eax
jne 0x409e12
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409dd3
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409e30
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 8]
mov edx, dword [esi]
push eax
push ecx
push edx
call fcn.00405a20
add esp, 0xc
test eax, eax
je 0x409e77
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409e30
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409e90
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 8]
mov edx, dword [esi]
push eax
push ecx
push edx
call fcn.00405a20
add esp, 0xc
test eax, eax
jne 0x409ed7
mov edx, dword [esi]
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409e90
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x409ef0
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 8]
mov ebx, dword [esi]
mov edx, dword [ebx + 8]
push eax
push ecx
push edx
call fcn.00405a50
add esp, 0xc
test eax, eax
je 0x409f38
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409ef0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [edi + 0xc]
mov eax, dword [edi + 8]
mov ebx, dword [esi]
mov ecx, dword [ebx + 8]
push edx
push eax
push ecx
call fcn.00405a50
add esp, 0xc
test eax, eax
jne 0x409f98
mov ecx, dword [esp + 0x44]
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x18]
push eax
push ebx
push ecx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409f50
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
lea esp, [esp]
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x184]
test eax, eax
jne 0x40b4b8
mov ecx, dword [edi + 0xc]
mov edx, dword [edi + 8]
mov ebx, dword [esi]
push ecx
push edx
push ebx
call fcn.00405a50
add esp, 0xc
test eax, eax
je 0x409ff1
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x409fb0
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x40a010
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [edi + 0xc]
mov eax, dword [edi + 8]
mov ebx, dword [esi]
push edx
push eax
push ebx
call fcn.00405a50
add esp, 0xc
test eax, eax
jne 0x40a051
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x40a010
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x40a070
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x184]
test edx, edx
jne 0x40b4b8
mov eax, dword [edi + 8]
mov ebx, dword [esi]
mov ecx, dword [ebx + 8]
push eax
push ecx
call fcn.00405ac0
add esp, 8
test eax, eax
je 0x40a0b0
mov ecx, dword [esp + 0x44]
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x18]
push eax
push ebx
push ecx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x40a070
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x184]
test eax, eax
jne 0x40b4b8
mov ecx, dword [edi + 8]
mov ebx, dword [esi]
mov edx, dword [ebx + 8]
push ecx
push edx
call fcn.00405ac0
add esp, 8
test eax, eax
jne 0x40a104
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x40a0c4
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
jmp 0x40a120
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [edi + 8]
mov ebx, dword [esi]
push edx
push ebx
call fcn.00405ac0
add esp, 8
test eax, eax
je 0x40a15d
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x40a120
jmp case.0x4077e0.64
cmp esi, ebp
je case.0x4077e0.64
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, dword [edi + 8]
mov ebx, dword [esi]
push edx
push ebx
call fcn.00405ac0
add esp, 8
test eax, eax
jne 0x40a1b2
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push ebx
push edx
call fcn.00401f60
add esp, 0x10
add esi, 4
cmp esi, ebp
jne 0x40a171
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
mov dword [esp + 0x18], eax
jne 0x4077c0
jmp 0x40b4b8
test eax, eax
je 0x40b4b8
jmp 0x40a1e0
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
lea ebx, [ecx + eax + 0x10]
lea ecx, [ebx + edx*4]
cmp ebx, ecx
mov dword [esp + 0x1c], ecx
je 0x40b4aa
lea esp, [esp]
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x184]
test ecx, ecx
jne 0x40b4b8
mov edx, eax
mov esi, dword [edx + 0xb8]
lea ebx, [ebx]
movzx eax, byte [esi + 0x1d]
cmp eax, 0x83
ja case.default.0x40a22f
jmp dword [eax*4 + 0x40b748]
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00404fb0
add esp, 0x10
test eax, eax
je case.0x40a22f.64
mov esi, dword [esi + 0x10]
test esi, esi
je 0x40b47f
jmp 0x40a220
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.00403010
jmp 0x40a24d
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00404ab0
jmp 0x40a24d
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.00403110
jmp 0x40a24d
mov edx, dword [esi + 4]
mov eax, dword [ebx]
mov ecx, dword [esi]
push edx
movzx edx, byte [eax + 0xc]
push ecx
push edx
add eax, 0xd
push eax
call fcn.00404ef0
jmp 0x40a24d
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.00403080
jmp 0x40a24d
mov edx, dword [esi + 4]
mov eax, dword [ebx]
mov ecx, dword [esi]
push edx
movzx edx, byte [eax + 0xc]
push ecx
push edx
add eax, 0xd
push eax
call fcn.004049a0
jmp 0x40a24d
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.004031e0
jmp 0x40a24d
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00404fb0
add esp, 0x1c
jmp 0x40a250
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403010
add esp, 0x1c
jmp 0x40a250
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00404ab0
add esp, 0x1c
jmp 0x40a250
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403110
add esp, 0x1c
jmp 0x40a250
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00404ef0
add esp, 0x1c
jmp 0x40a250
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403080
add esp, 0x1c
jmp 0x40a250
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004049a0
add esp, 0x1c
jmp 0x40a250
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004031e0
add esp, 0x1c
jmp 0x40a250
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00404fb0
add esp, 0x10
jmp 0x40b3d4
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.00403010
add esp, 0x10
jmp 0x40b3d4
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00404ab0
add esp, 0x10
jmp 0x40b3d4
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.00403110
add esp, 0x10
jmp 0x40b3d4
mov edx, dword [esi + 4]
mov eax, dword [ebx]
mov ecx, dword [esi]
push edx
movzx edx, byte [eax + 0xc]
push ecx
push edx
add eax, 0xd
push eax
call fcn.00404ef0
add esp, 0x10
jmp 0x40b3d4
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.00403080
add esp, 0x10
jmp 0x40b3d4
mov edx, dword [esi + 4]
mov eax, dword [ebx]
mov ecx, dword [esi]
push edx
movzx edx, byte [eax + 0xc]
push ecx
push edx
add eax, 0xd
push eax
call fcn.004049a0
add esp, 0x10
jmp 0x40b3d4
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.004031e0
add esp, 0x10
jmp 0x40b3d4
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00404fb0
add esp, 0x1c
jmp 0x40b3d4
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403010
add esp, 0x1c
jmp 0x40b3d4
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00404ab0
add esp, 0x1c
jmp 0x40b3d4
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403110
add esp, 0x1c
jmp 0x40b3d4
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00404ef0
add esp, 0x1c
jmp 0x40b3d4
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00403080
add esp, 0x1c
jmp 0x40b3d4
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004049a0
add esp, 0x1c
jmp 0x40b3d4
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004031e0
add esp, 0x1c
jmp 0x40b3d4
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.004046e0
jmp 0x40a24d
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00452440
jmp 0x40a24d
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.00404590
jmp 0x40a24d
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.004523a0
jmp 0x40a24d
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004046e0
add esp, 0x1c
jmp 0x40a250
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00452440
add esp, 0x1c
jmp 0x40a250
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404590
add esp, 0x1c
jmp 0x40a250
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004523a0
add esp, 0x1c
jmp 0x40a250
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.004046e0
add esp, 0x10
jmp 0x40b3d4
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.00452440
add esp, 0x10
jmp 0x40b3d4
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.00404590
add esp, 0x10
jmp 0x40b3d4
mov edx, dword [esi + 4]
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
push edx
mov edx, dword [esi]
push edx
add eax, 0xd
push ecx
push eax
call fcn.004523a0
add esp, 0x10
jmp 0x40b3d4
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004046e0
add esp, 0x1c
jmp 0x40b3d4
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.00452440
add esp, 0x1c
jmp 0x40b3d4
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.00404590
add esp, 0x1c
jmp 0x40b3d4
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004523a0
add esp, 0x1c
jmp 0x40b3d4
mov eax, dword [ebx]
movzx edx, byte [eax + 0xc]
mov ecx, dword [esi + 4]
mov edi, dword [esi]
add eax, 0xd
cmp ecx, edx
jg case.0x40a22f.64
sub eax, ecx
push ecx
add eax, edx
push eax
push ecx
jmp 0x40ae56
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.004032e0
jmp 0x40a24d
mov edi, dword [ebx]
movzx eax, byte [edi + 0xc]
mov edx, dword [esi + 4]
cmp edx, eax
mov ecx, dword [esi]
jg case.0x40a22f.64
sub eax, edx
add edx, ecx
cmp ecx, edx
lea edi, [eax + edi + 0xd]
mov eax, ecx
jae case.0x40a22f.68
sub edi, ecx
jmp 0x40aa20
mov cl, byte [eax + edi]
cmp cl, byte [eax]
jne case.0x40a22f.64
add eax, 1
cmp eax, edx
jb 0x40aa20
jmp case.0x40a22f.68
mov edi, dword [ebx]
movzx eax, byte [edi + 0xc]
mov edx, dword [esi + 4]
cmp edx, eax
mov ecx, dword [esi]
jg case.0x40a22f.64
sub eax, edx
add edx, ecx
cmp ecx, edx
lea edi, [eax + edi + 0xd]
mov eax, ecx
jae case.0x40a22f.68
sub edi, ecx
mov edi, edi
mov cl, byte [eax + edi]
cmp cl, byte [eax]
jne case.0x40a22f.64
add eax, 1
cmp eax, edx
jb 0x40aa60
jmp case.0x40a22f.68
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edx, dword [esi + 4]
mov edi, dword [esi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edx, ecx
jg case.0x40a22f.64
sub ecx, edx
add ecx, eax
push edx
push ecx
jmp 0x40ae55
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004032e0
add esp, 0x1c
jmp 0x40a250
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edi, dword [esi + 4]
mov edx, dword [esi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edi, ecx
jg case.0x40a22f.64
sub ecx, edi
lea ebp, [ecx + eax]
lea ecx, [edx + edi]
cmp edx, ecx
mov eax, edx
jae case.0x40a22f.68
sub ebp, edx
mov dl, byte [eax + ebp]
cmp dl, byte [eax]
jne case.0x40a22f.64
add eax, 1
cmp eax, ecx
jb 0x40ab20
jmp case.0x40a22f.68
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edi, dword [esi + 4]
mov edx, dword [esi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edi, ecx
jg case.0x40a22f.64
sub ecx, edi
lea ebp, [ecx + eax]
lea ecx, [edx + edi]
cmp edx, ecx
mov eax, edx
jae case.0x40a22f.68
sub ebp, edx
jmp 0x40ab80
mov dl, byte [eax + ebp]
cmp dl, byte [eax]
jne case.0x40a22f.64
add eax, 1
cmp eax, ecx
jb 0x40ab80
jmp case.0x40a22f.68
mov eax, dword [ebx]
movzx edx, byte [eax + 0xc]
mov ecx, dword [esi + 4]
mov edi, dword [esi]
add eax, 0xd
cmp ecx, edx
jg case.0x40a22f.68
sub eax, ecx
push ecx
add eax, edx
push eax
push ecx
jmp 0x40b036
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.004032e0
add esp, 0x10
jmp 0x40b3d4
mov eax, dword [ebx]
movzx edi, byte [eax + 0xc]
mov edx, dword [esi + 4]
cmp edx, edi
mov ecx, dword [esi]
jg case.0x40a22f.68
sub eax, edx
add edx, ecx
cmp ecx, edx
lea edi, [eax + edi + 0xd]
mov eax, ecx
jae case.0x40a22f.64
sub edi, ecx
nop
mov cl, byte [edi + eax]
cmp cl, byte [eax]
jne case.0x40a22f.68
add eax, 1
cmp eax, edx
jb 0x40ac00
jmp case.0x40a22f.64
mov eax, dword [ebx]
movzx edi, byte [eax + 0xc]
mov edx, dword [esi + 4]
cmp edx, edi
mov ecx, dword [esi]
jg case.0x40a22f.68
sub eax, edx
add edx, ecx
cmp ecx, edx
lea edi, [eax + edi + 0xd]
mov eax, ecx
jae case.0x40a22f.64
sub edi, ecx
mov edi, edi
mov cl, byte [edi + eax]
cmp cl, byte [eax]
jne case.0x40a22f.68
add eax, 1
cmp eax, edx
jb 0x40ac40
jmp case.0x40a22f.64
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edx, dword [esi + 4]
mov edi, dword [esi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edx, ecx
jg case.0x40a22f.68
sub ecx, edx
add ecx, eax
push edx
push ecx
jmp 0x40b035
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push edx
mov edx, dword [esp + 0x38]
sub edx, eax
add edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.004032e0
add esp, 0x1c
jmp 0x40b3d4
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edi, dword [esi + 4]
mov edx, dword [esi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edi, ecx
jg case.0x40a22f.68
sub ecx, edi
lea ebp, [ecx + eax]
lea ecx, [edx + edi]
cmp edx, ecx
mov eax, edx
jae case.0x40a22f.64
sub ebp, edx
mov dl, byte [eax + ebp]
cmp dl, byte [eax]
jne case.0x40a22f.68
add eax, 1
cmp eax, ecx
jb 0x40ad00
jmp case.0x40a22f.64
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edi, dword [esi + 4]
mov edx, dword [esi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edi, ecx
jg case.0x40a22f.68
sub ecx, edi
lea ebp, [ecx + eax]
lea ecx, [edx + edi]
cmp edx, ecx
mov eax, edx
jae case.0x40a22f.64
sub ebp, edx
jmp 0x40ad60
mov dl, byte [eax + ebp]
cmp dl, byte [eax]
jne case.0x40a22f.68
add eax, 1
cmp eax, ecx
jb 0x40ad60
jmp case.0x40a22f.64
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
mov edi, dword [esi]
lea edx, [eax + 0xd]
mov eax, dword [esi + 4]
cmp eax, ecx
jg case.0x40a22f.64
push eax
push edx
push eax
jmp 0x40ae56
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.004035b0
jmp 0x40a24d
mov edx, dword [ebx]
movzx edi, byte [edx + 0xc]
mov ecx, dword [esi + 4]
cmp ecx, edi
mov eax, dword [esi]
jg case.0x40a22f.64
add ecx, eax
add edx, 0xd
cmp eax, ecx
jae case.0x40a22f.68
mov edi, edx
sub edi, eax
mov dl, byte [edi + eax]
cmp dl, byte [eax]
jne case.0x40a22f.64
add eax, 1
cmp eax, ecx
jb 0x40add5
jmp case.0x40a22f.68
mov edx, dword [ebx]
movzx edi, byte [edx + 0xc]
mov ecx, dword [esi + 4]
cmp ecx, edi
mov eax, dword [esi]
jg case.0x40a22f.64
add ecx, eax
add edx, 0xd
cmp eax, ecx
jae case.0x40a22f.68
mov edi, edx
sub edi, eax
mov dl, byte [edi + eax]
cmp dl, byte [eax]
jne case.0x40a22f.64
add eax, 1
cmp eax, ecx
jb 0x40ae10
jmp case.0x40a22f.68
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edx, dword [esi + 4]
mov edi, dword [esi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edx, ecx
jg case.0x40a22f.64
push edx
push eax
push edx
push edi
call fcn.00403730
add esp, 0x10
neg eax
sbb eax, eax
add eax, 1
jmp 0x40a252
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004035b0
add esp, 0x1c
jmp 0x40a250
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edi, dword [esp + 0x34]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
sub edi, eax
add edi, dword [esp + 0x30]
add esp, 0xc
cmp edx, edi
jg case.0x40a22f.64
add edx, ecx
cmp ecx, edx
jae case.0x40a22f.68
mov edi, eax
sub edi, ecx
jmp 0x40aee0
mov al, byte [edi + ecx]
cmp al, byte [ecx]
jne case.0x40a22f.64
add ecx, 1
cmp ecx, edx
jb 0x40aee0
jmp case.0x40a22f.68
mov ecx, dword [ebx]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
push ecx
push edx
push eax
call fcn.00407460
mov edi, dword [esp + 0x34]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
sub edi, eax
add edi, dword [esp + 0x30]
add esp, 0xc
cmp edx, edi
jg case.0x40a22f.64
add edx, ecx
cmp ecx, edx
jae case.0x40a22f.68
mov edi, eax
sub edi, ecx
mov al, byte [edi + ecx]
cmp al, byte [ecx]
jne case.0x40a22f.64
add ecx, 1
cmp ecx, edx
jb 0x40af31
jmp case.0x40a22f.68
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
mov edi, dword [esi]
lea edx, [eax + 0xd]
mov eax, dword [esi + 4]
cmp eax, ecx
jg case.0x40a22f.68
push eax
push edx
push eax
jmp 0x40b036
mov ecx, dword [esi + 4]
mov eax, dword [ebx]
mov edx, dword [esi]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
push ecx
add eax, 0xd
push eax
call fcn.004035b0
add esp, 0x10
jmp 0x40b3d4
mov edx, dword [ebx]
movzx edi, byte [edx + 0xc]
mov ecx, dword [esi + 4]
cmp ecx, edi
mov eax, dword [esi]
jg case.0x40a22f.68
add ecx, eax
add edx, 0xd
cmp eax, ecx
jae case.0x40a22f.64
mov edi, edx
sub edi, eax
lea esp, [esp]
mov dl, byte [edi + eax]
cmp dl, byte [eax]
jne case.0x40a22f.68
add eax, 1
cmp eax, ecx
jb 0x40afb0
jmp case.0x40a22f.64
mov edx, dword [ebx]
movzx edi, byte [edx + 0xc]
mov ecx, dword [esi + 4]
cmp ecx, edi
mov eax, dword [esi]
jg case.0x40a22f.68
add ecx, eax
add edx, 0xd
cmp eax, ecx
jae case.0x40a22f.64
mov edi, edx
sub edi, eax
jmp 0x40aff0
mov dl, byte [edi + eax]
cmp dl, byte [eax]
jne case.0x40a22f.68
add eax, 1
cmp eax, ecx
jb 0x40aff0
jmp case.0x40a22f.64
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esp + 0x34]
mov edx, dword [esi + 4]
mov edi, dword [esi]
sub ecx, eax
add ecx, dword [esp + 0x30]
add esp, 0xc
cmp edx, ecx
jg case.0x40a22f.68
push edx
push eax
push edx
push edi
call fcn.00403730
add esp, 0x10
neg eax
sbb eax, eax
add eax, 1
jmp 0x40b3d6
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
call fcn.00407460
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
mov ecx, dword [esp + 0x38]
sub ecx, eax
add ecx, dword [esp + 0x34]
push edx
push ecx
push eax
call fcn.004035b0
add esp, 0x1c
jmp 0x40b3d4
mov edx, dword [ebx]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.00407460
mov edi, dword [esp + 0x34]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
sub edi, eax
add edi, dword [esp + 0x30]
add esp, 0xc
cmp edx, edi
jg case.0x40a22f.68
add edx, ecx
cmp ecx, edx
jae case.0x40a22f.64
mov edi, eax
sub edi, ecx
jmp 0x40b0c0
mov al, byte [edi + ecx]
cmp al, byte [ecx]
jne case.0x40a22f.68
add ecx, 1
cmp ecx, edx
jb 0x40b0c0
jmp case.0x40a22f.64
mov ecx, dword [ebx]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
push ecx
push edx
push eax
call fcn.00407460
mov edi, dword [esp + 0x34]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
sub edi, eax
add edi, dword [esp + 0x30]
add esp, 0xc
cmp edx, edi
jg case.0x40a22f.68
add edx, ecx
cmp ecx, edx
jae case.0x40a22f.64
mov edi, eax
sub edi, ecx
mov al, byte [edi + ecx]
cmp al, byte [ecx]
jne case.0x40a22f.68
add ecx, 1
cmp ecx, edx
jb 0x40b111
jmp case.0x40a22f.64
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
add eax, 0xd
test ecx, ecx
je case.0x40a22f.68
lea esp, [esp]
cmp byte [eax], 0x2e
je case.0x40a22f.64
add eax, 1
sub ecx, 1
jne 0x40b140
jmp case.0x40a22f.68
mov eax, dword [ebx]
movzx ecx, byte [eax + 0xc]
add eax, 0xd
test ecx, ecx
je case.0x40a22f.64
cmp byte [eax], 0x2e
je case.0x40a22f.68
add eax, 1
sub ecx, 1
jne 0x40b167
jmp case.0x40a22f.64
mov eax, dword [ebx]
movzx edi, byte [eax + 0xc]
mov ebp, dword [esp + 0x28]
add eax, 0xd
test ebp, ebp
je 0x40b1bb
mov ecx, dword [esp + 0x24]
cmp ecx, 1
jl 0x40b1bb
add ecx, 0xffffffff
cmp edi, ecx
jle 0x40b1a8
mov edi, ecx
mov ecx, dword [esp + 0x28]
push edi
push eax
push ecx
call fcn.00489b40
add esp, 0xc
mov byte [edi + ebp], 0
mov edx, dword [esp + 0x28]
mov eax, dword [esi + 8]
push 0
push 0
push 0
push edx
push eax
call fcn.00481f70
add esp, 0x14
test eax, eax
jne case.0x40a22f.64
jmp case.0x40a22f.68
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov byte [ecx + edx - 1], 0
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
add ecx, 0xffffffff
push ecx
push edx
call fcn.00407460
push 0
push 0
push 0
push eax
mov eax, dword [esi + 8]
push eax
call fcn.00481f70
add esp, 0x20
test eax, eax
jne case.0x40a22f.64
jmp case.0x40a22f.68
mov eax, dword [ebx]
movzx edi, byte [eax + 0xc]
mov ebp, dword [esp + 0x28]
add eax, 0xd
test ebp, ebp
je 0x40b25f
mov ecx, dword [esp + 0x24]
cmp ecx, 1
jl 0x40b25f
add ecx, 0xffffffff
cmp edi, ecx
jle 0x40b24c
mov edi, ecx
mov ecx, dword [esp + 0x28]
push edi
push eax
push ecx
call fcn.00489b40
add esp, 0xc
mov byte [edi + ebp], 0
mov edx, dword [esp + 0x28]
mov eax, dword [esi + 8]
push 0
push 0
push 0
push edx
push eax
call fcn.00481f70
add esp, 0x14
test eax, eax
jne case.0x40a22f.68
jmp case.0x40a22f.64
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov byte [ecx + edx - 1], 0
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
add ecx, 0xffffffff
push ecx
push edx
call fcn.00407460
push 0
push 0
push 0
push eax
mov eax, dword [esi + 8]
push eax
call fcn.00481f70
add esp, 0x20
test eax, eax
jne case.0x40a22f.68
jmp case.0x40a22f.64
mov eax, dword [ebx]
push eax
call fcn.00430ab0
add esp, 4
jmp 0x40a250
mov eax, dword [ebx]
push eax
call fcn.00430ab0
add esp, 4
jmp 0x40b3d4
mov eax, dword [ebx]
mov ebp, dword [esi + 8]
mov edi, dword [esi + 0xc]
push eax
call fcn.00430ab0
add esp, 4
test eax, eax
je case.0x40a22f.64
mov ecx, dword [eax + 5]
cmp ecx, edi
jb case.0x40a22f.64
ja case.0x40a22f.68
mov edx, dword [eax + 1]
cmp edx, ebp
jb case.0x40a22f.64
jmp case.0x40a22f.68
mov eax, dword [ebx]
mov ebp, dword [esi + 8]
mov edi, dword [esi + 0xc]
push eax
call fcn.00430ab0
add esp, 4
test eax, eax
je case.0x40a22f.68
mov ecx, dword [eax + 5]
cmp ecx, edi
jb case.0x40a22f.68
ja 0x40b350
mov edx, dword [eax + 1]
cmp edx, ebp
jb case.0x40a22f.68
mov esi, dword [esi + 0x14]
test esi, esi
je 0x40b499
jmp 0x40a220
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov edx, dword [ebx]
push eax
mov eax, dword [edx + 8]
push ecx
push eax
call fcn.00405a50
add esp, 0xc
jmp 0x40a250
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
mov eax, dword [ebx]
push ecx
mov ecx, dword [eax + 8]
push edx
push ecx
call fcn.00405a50
add esp, 0xc
test eax, eax
je case.0x40a22f.68
mov esi, dword [esi + 0x14]
test esi, esi
je 0x40b499
jmp 0x40a220
mov edx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov ecx, dword [ebx]
push edx
push eax
push ecx
call fcn.00405a50
add esp, 0xc
jmp 0x40a250
mov edx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov ecx, dword [ebx]
push edx
push eax
push ecx
call fcn.00405a50
add esp, 0xc
test eax, eax
je case.0x40a22f.68
mov esi, dword [esi + 0x14]
test esi, esi
je 0x40b499
jmp 0x40a220
mov edx, dword [ebx]
mov eax, dword [edx + 8]
test eax, eax
je case.0x40a22f.64
mov ecx, dword [esi + 8]
cmp eax, ecx
je case.0x40a22f.68
mov eax, dword [eax + 8]
test eax, eax
jne 0x40b3f8
jmp case.0x40a22f.64
mov eax, dword [ebx]
mov eax, dword [eax + 8]
test eax, eax
je case.0x40a22f.68
mov ecx, dword [esi + 8]
lea esp, [esp]
cmp eax, ecx
je case.0x40a22f.64
mov eax, dword [eax + 8]
test eax, eax
jne 0x40b420
jmp case.0x40a22f.68
mov eax, dword [ebx]
test eax, eax
je case.0x40a22f.64
mov ecx, dword [esi + 8]
lea esp, [esp]
cmp eax, ecx
je case.0x40a22f.68
mov eax, dword [eax + 8]
test eax, eax
jne 0x40b440
jmp case.0x40a22f.64
mov eax, dword [ebx]
test eax, eax
je case.0x40a22f.68
mov ecx, dword [esi + 8]
mov edi, edi
cmp eax, ecx
je case.0x40a22f.64
mov eax, dword [eax + 8]
test eax, eax
jne 0x40b460
jmp case.0x40a22f.68
mov esi, dword [esi + 0x18]
test esi, esi
jne 0x40a220
mov eax, dword [ebx]
lea ecx, [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x48]
lea edx, [esp + 0x18]
push edx
push eax
push ecx
call fcn.00401f60
add esp, 0x10
add ebx, 4
cmp ebx, dword [esp + 0x1c]
jne 0x40a200
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
mov dword [esp + 0x18], eax
jne 0x40a1e0
pop ebp
mov esi, dword [esp + 0x40]
lea edx, [esp + 0xc]
push edx
lea eax, [esp + 0x14]
push eax
push esi
call fcn.00402210
mov dword [esi + 0x3c], eax
call fcn.00433df0
fstp qword [esp + 0x24]
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0x3c]
shl ecx, 0xe
add ecx, dword [esi + 8]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push str.found__d_folders__size__d__db_search_time_taken:
call fcn.00433c50
fld qword [esp + 0x30]
fsub qword [esp + 0x40]
add esp, 0x10
fstp qword [esp]
push str._f_seconds_n
push 0xff0000ff
call fcn.00433d00
add esp, 0x10
lea ecx, [esp + 0x20]
mov dword [esp + 0x38], 0xffffffff
call fcn.0047ca90
mov ecx, dword [esp + 0x30]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x30
ret