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

Disassembly:
push ebp
mov ebp, edx
push edi
push esi
push ebx
mov ebx, eax
sub esp, 0x8c
test edx, edx
je case.0x405238.49
mov eax, dword [eax + 0x11c]
test eax, eax
jne case.default.0x4076b9
mov eax, dword [edx]
cmp eax, 0x42
jbe switch.0x00405238
mov dword [ebx + 0x11c], 1
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret
jmp dword [eax*4 + 0x419720]
mov edx, dword [ebp + 4]
mov eax, ebx
call fcn.00405200
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
lea edx, [eax + 1]
je 0x407480
mov byte [ebx + eax + 4], 0x7e
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x7e
nop
lea esi, [esi]
mov edx, dword [ebp + 8]
mov eax, ebx
call fcn.00405200
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x4052bd
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x1a
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.covariant_return_thunk_to]
jne 0x4052a0
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x4052a5
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405334
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0xf
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.java_Class_for]
jne 0x405313
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405318
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x4053b1
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x13
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.guard_variable_for]
jne 0x405390
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405395
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405428
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x18
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.reference_temporary_for]
jne 0x405407
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x40540c
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x4054a1
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x11
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.hidden_alias_for]
jne 0x405480
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405485
mov edi, dword [edx + 8]
mov ebp, dword [edx + 4]
test edi, edi
je case.default.0x4076b9
lea edx, [ebx + 4]
mov eax, dword [ebx + 0x104]
xor esi, esi
mov dword [esp + 0x1c], edx
jmp 0x405530
mov ecx, eax
add eax, 1
add esi, 1
cmp edi, esi
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.default.0x4076b9
cmp eax, 0xff
movzx edx, byte [ebp + esi]
jne 0x405510
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405515
mov edi, dword [ebx + 0x118]
test edi, edi
je 0x4055b1
mov edx, edi
mov ecx, dword [edx + 8]
test ecx, ecx
jne 0x4055a3
mov ecx, dword [edx + 4]
mov ecx, dword [ecx]
lea esi, [ecx - 0x17]
cmp esi, 2
ja 0x4055b1
cmp eax, ecx
je case.0x405238.36
mov edx, dword [edx]
test edx, edx
jne 0x405587
jmp 0x4055b1
mov edi, dword [ebx + 0x118]
lea eax, [esp + 0x38]
mov dword [ebx + 0x118], eax
mov eax, dword [ebx + 0x114]
mov edx, dword [ebp + 4]
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x44], eax
mov eax, ebx
mov dword [esp + 0x40], 0
call fcn.00405200
mov edi, dword [esp + 0x40]
test edi, edi
je 0x405632
mov eax, dword [esp + 0x38]
mov dword [ebx + 0x118], eax
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x118]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], eax
lea eax, [esp + 0x38]
mov dword [ebx + 0x118], eax
mov eax, dword [ebx + 0x114]
mov edx, dword [edx + 8]
mov dword [esp + 0x44], eax
mov eax, ebx
call fcn.00405200
mov eax, dword [esp + 0x40]
test eax, eax
jne 0x4055e7
mov edx, ebp
mov eax, ebx
call fcn.00407c70
jmp 0x4055e7
cmp word [edx + 0xa], 0
jne 0x40731d
mov edx, dword [ebp + 4]
cmp dword [edx + 4], 0x419b00
je 0x4072f3
mov eax, ebx
call fcn.00405200
mov edx, dword [ebx + 0x104]
cmp edx, 0xff
lea eax, [edx + 1]
je 0x407724
mov byte [ebx + edx + 4], 0x20
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], 0x20
xor esi, esi
cmp word [ebp + 8], 0
lea edi, [ebx + 4]
je 0x405723
jmp 0x4056b9
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 6
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.default.0x4076b9
cmp eax, 0xff
movzx edx, byte [esi + str._Accum]
jne 0x405698
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x40569d
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 6
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.default.0x4076b9
cmp eax, 0xff
movzx edx, byte [esi + str._Fract]
jne 0x405702
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405707
mov edx, dword [edx + 4]
test edx, edx
je 0x40577a
mov eax, ebx
call fcn.00405200
mov eax, dword [ebp + 8]
test eax, eax
je case.default.0x4076b9
mov esi, dword [ebx + 0x104]
cmp esi, 0xfd
ja 0x407401
lea eax, [ebx + 4]
xor edi, edi
mov dword [esp + 0x1c], ebp
mov ebp, eax
jmp 0x4057c5
mov edx, esi
add esi, 1
add edi, 1
cmp edi, 2
mov byte [ebx + edx + 4], al
mov dword [ebx + 0x104], esi
mov byte [ebx + 0x108], al
je 0x40709a
cmp esi, 0xff
movzx eax, byte [edi + 0x419664]
jne 0x4057a4
mov edx, dword [ebx + 0x110]
mov esi, 1
mov byte [esp + 0x18], al
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], edx
mov dword [esp], ebp
call dword [ebx + 0x10c]
xor edx, edx
movzx eax, byte [esp + 0x18]
add dword [ebx + 0x124], 1
jmp 0x4057a9
test byte [ebx], 0x20
jne 0x407308
mov esi, dword [ebp + 4]
test esi, esi
je 0x4072fe
mov eax, dword [ebx + 0x118]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], eax
lea eax, [esp + 0x38]
mov dword [ebx + 0x118], eax
mov eax, dword [ebx + 0x114]
mov edx, dword [ebp + 4]
mov dword [esp + 0x44], eax
mov eax, ebx
call fcn.00405200
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
test ecx, ecx
mov dword [ebx + 0x118], eax
jne case.default.0x4076b9
test byte [ebx], 0x20
jne case.default.0x4076b9
mov edx, dword [ebx + 0x104]
xor eax, eax
cmp edx, 0xff
je 0x407a66
mov byte [ebx + edx + 4], 0x20
add edx, 1
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x20
test eax, eax
jne case.default.0x4076b9
mov ecx, dword [ebx + 0x118]
lea edx, [ebp + 8]
mov eax, ebx
call fcn.004088c0
jmp case.default.0x4076b9
mov ecx, dword [ebx + 0x118]
lea esi, [esp + 0x38]
mov eax, dword [ebx + 0x114]
mov edi, esi
mov dword [ebx + 0x118], esi
mov dword [esp + 0x3c], edx
test ecx, ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], eax
je 0x407928
mov eax, dword [ecx + 4]
mov eax, dword [eax]
sub eax, 0x17
cmp eax, 2
ja 0x407928
mov eax, ecx
mov ecx, 1
mov dword [esp + 0x24], 1
mov dword [esp + 0x28], edx
mov dword [esp + 0x1c], esi
jmp 0x40592d
mov edx, dword [eax + 4]
mov edx, dword [edx]
sub edx, 0x17
cmp edx, 2
ja 0x40597e
mov edx, dword [eax + 8]
test edx, edx
jne 0x405978
cmp ecx, 3
ja case.0x405238.49
mov ebp, dword [eax]
mov edx, ecx
add ecx, 1
shl edx, 4
lea esi, [esp + edx + 0x38]
mov dword [esp + edx + 0x38], ebp
mov ebp, dword [eax + 4]
mov dword [esi + 4], ebp
mov ebp, dword [eax + 8]
mov dword [esi + 8], ebp
mov ebp, dword [eax + 0xc]
mov dword [esi + 0xc], ebp
mov dword [esp + edx + 0x38], edi
mov edi, dword [esp + 0x1c]
add edi, edx
mov dword [ebx + 0x118], edi
mov dword [eax + 8], 1
mov eax, dword [eax]
test eax, eax
jne 0x405920
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov edx, dword [ebp + 8]
mov eax, ebx
call fcn.00405200
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x20]
test eax, eax
mov dword [ebx + 0x118], ecx
jne case.default.0x4076b9
cmp dword [esp + 0x24], 1
je 0x4059e1
mov edi, dword [esp + 0x24]
sub edi, 1
mov eax, edi
shl eax, 4
lea esi, [esi + eax + 4]
jmp 0x4059c6
sub edi, 1
mov edx, dword [esi]
mov eax, ebx
sub esi, 0x10
call fcn.00407c70
cmp edi, 1
jne 0x4059c3
mov ecx, dword [ebx + 0x118]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x20]
lea edx, [ebp + 4]
mov eax, ebx
call fcn.00408640
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405a22
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 8
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406cf5
cmp eax, 0xff
movzx edx, byte [esi + 0x419667]
jne 0x405a01
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405a06
test byte [ebx], 4
mov eax, dword [edx + 4]
jne 0x40710c
mov edi, dword [eax + 4]
mov ebp, dword [eax]
test edi, edi
je case.default.0x4076b9
lea edx, [ebx + 4]
mov eax, dword [ebx + 0x104]
xor esi, esi
mov dword [esp + 0x1c], edx
jmp 0x405ab5
mov ecx, eax
add eax, 1
add esi, 1
cmp edi, esi
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.default.0x4076b9
cmp eax, 0xff
movzx edx, byte [ebp + esi]
jne 0x405a95
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405a9a
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405b31
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0xe
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406bc8
cmp eax, 0xff
movzx edx, byte [esi + str.unnamed_type]
jne 0x405b10
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405b15
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405ba8
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 9
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.7
cmp eax, 0xff
movzx edx, byte [esi + str.operator]
jne 0x405b87
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405b8c
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405c21
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 9
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406d90
cmp eax, 0xff
movzx edx, byte [esi + str.operator]
jne 0x405c00
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405c05
mov edx, dword [edx + 4]
cmp dword [edx], 0x2e
je 0x40739a
mov eax, ebx
call fcn.00408d90
mov edx, dword [ebp + 8]
mov eax, ebx
call fcn.00408e60
jmp case.default.0x4076b9
mov eax, dword [edx + 8]
cmp dword [eax], 0x31
jne case.0x405238.49
mov edx, dword [edx + 4]
cmp dword [edx], 0x2c
je 0x407839
mov edx, dword [eax + 4]
mov eax, ebx
mov edi, 0x41967a
call fcn.00408e60
mov edx, dword [ebp + 4]
mov ecx, 3
mov eax, dword [edx + 4]
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
mov esi, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4077cc
mov esi, dword [esp + 0x1c]
mov edi, 0x419543
mov ecx, 3
repe cmpsb byte [esi], byte es:[edi]
jne 0x407901
mov eax, dword [ebp + 8]
mov edx, dword [eax + 8]
mov eax, ebx
call fcn.00408e60
mov eax, dword [ebp + 4]
cmp dword [eax], 0x2c
jne case.default.0x4076b9
mov eax, dword [eax + 4]
cmp dword [eax + 8], 1
jne case.default.0x4076b9
mov eax, dword [eax + 4]
cmp byte [eax], 0x3e
jne case.default.0x4076b9
mov edx, 0x29
mov eax, ebx
call fcn.00402e70
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405d55
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x1c
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.global_destructors_keyed_to]
jne 0x405d34
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405d39
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405dd1
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0xb
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.vtable_for]
jne 0x405db0
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405db5
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x405e48
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 8
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.VTT_for]
jne 0x405e27
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405e2c
mov edx, dword [edx + 4]
mov eax, ebx
call fcn.00402ee0
test eax, eax
je 0x4079a6
cmp dword [eax], 0x2b
jne case.default.0x4076b9
mov edi, dword [eax + 4]
xor esi, esi
test edi, edi
jne 0x405ece
jmp case.default.0x4076b9
cmp dword [eax], 0x2b
jne 0x405ed8
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x405ed8
mov esi, edx
mov eax, dword [eax + 8]
lea edx, [esi + 1]
test eax, eax
jne 0x405ec0
mov ebp, dword [ebp + 4]
lea ecx, [ebx + 4]
xor edi, edi
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ebp
jmp 0x405efd
add edi, 1
cmp edi, dword [esp + 0x1c]
je case.default.0x4076b9
mov edx, dword [esp + 0x20]
mov eax, ebx
mov dword [ebx + 0x120], edi
call fcn.00405200
cmp edi, esi
jge 0x405ef0
mov eax, dword [ebx + 0x104]
xor ebp, ebp
jmp 0x405f3d
mov ecx, eax
add eax, 1
add ebp, 1
cmp ebp, 2
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x405ef0
cmp eax, 0xff
movzx edx, byte [ebp + 0x419664]
jne 0x405f20
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x24]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x405f25
mov edx, dword [edx + 4]
xor esi, esi
cmp dword [edx], 0x23
jne 0x405fb1
mov edx, dword [edx + 4]
mov esi, dword [edx + 0x10]
cmp esi, 1
jb 0x405fb1
cmp esi, 6
jbe 0x407690
cmp esi, 7
je 0x407649
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
lea edx, [eax + 1]
je 0x407611
mov byte [ebx + eax + 4], 0x28
mov eax, ebx
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x28
mov edx, dword [ebp + 4]
call fcn.00405200
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
lea edx, [eax + 1]
je 0x4075d9
mov byte [ebx + eax + 4], 0x29
mov byte [ebx + 0x108], 0x29
cmp dword [ebp], 0x36
mov dword [ebx + 0x104], edx
je 0x4077a6
cmp esi, 8
jne case.0x405238.7
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
je 0x407ad1
mov byte [ebx + eax + 4], 0x5b
add eax, 1
mov dword [ebx + 0x104], eax
mov eax, ebx
mov byte [ebx + 0x108], 0x5b
mov edx, dword [ebp + 8]
call fcn.00405200
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
je 0x407a33
mov byte [ebx + eax + 4], 0x5d
add eax, 1
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], 0x5d
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x4060a3
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0xe
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.java_resource]
jne 0x406082
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406087
mov eax, dword [ebx + 0x104]
movzx edx, byte [edx + 4]
cmp eax, 0xff
lea ecx, [eax + 1]
je 0x407528
mov byte [ebx + eax + 4], dl
mov dword [ebx + 0x104], ecx
mov byte [ebx + 0x108], dl
jmp case.default.0x4076b9
mov eax, dword [edx + 4]
lea esi, [esp + 0x38]
mov dword [esp + 4], 0x419696
mov ebp, esi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_sprintf
mov edx, dword [ebp]
add ebp, 4
lea eax, [edx - 0x1010101]
not edx
and eax, edx
and eax, 0x80808080
je 0x406136
mov edx, eax
shr edx, 0x10
test eax, 0x8080
cmove eax, edx
lea edx, [ebp + 2]
cmove ebp, edx
add al, al
sbb ebp, 3
sub ebp, esi
je case.default.0x4076b9
lea edx, [ebx + 4]
mov eax, dword [ebx + 0x104]
xor edi, edi
mov dword [esp + 0x1c], edx
jmp 0x4061a0
mov ecx, eax
add eax, 1
add edi, 1
cmp edi, ebp
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.default.0x4076b9
cmp eax, 0xff
movzx edx, byte [esi + edi]
jne 0x406180
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406185
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406218
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0xa
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406db0
cmp eax, 0xff
movzx edx, byte [esi + str.decltype__]
jne 0x4061f7
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x4061fc
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406291
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x1d
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.global_constructors_keyed_to]
jne 0x406270
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406275
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406308
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x15
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.non_virtual_thunk_to]
jne 0x4062e7
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x4062ec
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406381
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x11
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.virtual_thunk_to]
jne 0x406360
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406365
test byte [ebx], 4
jne 0x4071c0
mov edi, dword [edx + 8]
mov ebp, dword [edx + 4]
test edi, edi
je case.default.0x4076b9
lea edx, [ebx + 4]
mov eax, dword [ebx + 0x104]
xor esi, esi
mov dword [esp + 0x1c], edx
jmp 0x406412
mov ecx, eax
add eax, 1
add esi, 1
cmp edi, esi
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.default.0x4076b9
cmp eax, 0xff
movzx edx, byte [ebp + esi]
jne 0x4063f2
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x4063f7
mov edx, dword [edx + 4]
mov eax, ebx
call fcn.00405200
mov eax, dword [ebx + 0x104]
test byte [ebx], 4
jne 0x40719b
xor esi, esi
lea edi, [ebx + 4]
jmp 0x4064a1
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 2
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.7
cmp eax, 0xff
movzx edx, byte [esi + 0x41954c]
jne 0x406480
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406485
mov ecx, dword [ebx + 0x118]
mov dword [ebx + 0x118], 0
mov edi, dword [edx + 4]
mov dword [esp + 0x20], ecx
test edi, edi
je case.0x405238.49
mov eax, dword [ebx + 0x114]
lea esi, [esp + 0x38]
mov dword [esp + 0x38], 0
mov dword [ebx + 0x118], esi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x44], eax
mov eax, dword [edi]
mov dword [esp + 0x40], 0
sub eax, 0x1a
cmp eax, 2
ja 0x407bff
lea eax, [esp + 0x48]
mov ecx, 1
mov edi, dword [edi + 4]
test edi, edi
je case.0x405238.49
cmp ecx, 4
je case.0x405238.49
mov edx, dword [ebx + 0x118]
mov dword [eax + 4], edi
mov dword [eax + 8], 0
mov dword [eax], edx
mov edx, ecx
add ecx, 1
shl edx, 4
add edx, esi
mov dword [ebx + 0x118], edx
mov edx, dword [esp + 0x1c]
mov dword [eax + 0xc], edx
mov edx, dword [edi]
add eax, 0x10
sub edx, 0x1a
cmp edx, 2
jbe 0x40654c
mov eax, dword [edi]
cmp eax, 4
je 0x40790d
cmp eax, 2
jne 0x406648
mov edx, dword [edi + 8]
cmp dword [edx], 0x3f
je 0x407b37
mov eax, dword [edx]
sub eax, 0x1a
cmp eax, 2
ja 0x406648
cmp ecx, 3
ja case.0x405238.49
lea eax, [ecx - 1]
mov dword [esp + 0x24], eax
shl eax, 4
mov dword [esp + 0x2c], ebp
add eax, esi
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x28], edi
jmp 0x4065f6
add eax, 0x10
cmp ecx, 4
je case.0x405238.49
lea ebp, [ecx - 1]
mov edi, dword [eax + 4]
mov dword [eax + 4], edx
mov dword [eax + 0x14], edi
mov edi, dword [eax + 8]
mov dword [eax + 8], 0
mov dword [eax + 0x18], edi
mov edi, dword [eax + 0xc]
mov dword [eax + 0x1c], edi
mov edi, ebp
shl edi, 4
add edi, esi
mov dword [eax + 0x10], edi
mov edi, ecx
add ecx, 1
shl edi, 4
add edi, esi
mov dword [ebx + 0x118], edi
mov edi, dword [esp + 0x1c]
mov dword [eax + 0xc], edi
mov edx, dword [edx + 4]
mov edi, dword [edx]
sub edi, 0x1a
cmp edi, 2
jbe 0x4065e7
mov edi, dword [esp + 0x28]
mov ebp, dword [esp + 0x2c]
mov edx, dword [ebp + 8]
mov eax, ebx
mov dword [esp + 0x18], ecx
call fcn.00405200
mov ecx, dword [esp + 0x18]
cmp dword [edi], 4
je 0x4079c1
test ecx, ecx
je 0x407715
sub ecx, 1
mov eax, ecx
lea edi, [ebx + 4]
shl eax, 4
mov ebp, edi
lea esi, [esi + eax + 8]
mov edi, ecx
jmp 0x40668e
sub esi, 0x10
test edi, edi
je 0x407715
sub edi, 1
mov eax, dword [esi]
test eax, eax
jne 0x406680
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
je 0x4079d0
mov edx, dword [esi - 4]
mov byte [ebx + eax + 4], 0x20
add eax, 1
mov dword [ebx + 0x104], eax
mov eax, ebx
mov byte [ebx + 0x108], 0x20
call fcn.00407c70
jmp 0x406680
mov edi, dword [ebx + 0x118]
test byte [ebx], 4
mov dword [ebx + 0x118], 0
mov edx, dword [edx + 4]
mov dword [esp + 0x1c], edi
je 0x4066f2
mov esi, dword [edx]
test esi, esi
jne 0x4066f2
cmp dword [edx + 8], 6
je 0x40789e
mov eax, ebx
call fcn.00405200
mov eax, dword [ebx + 0x104]
cmp byte [ebx + 0x108], 0x3c
je 0x40775c
cmp eax, 0xff
lea edx, [eax + 1]
je 0x4075a1
mov byte [ebx + eax + 4], 0x3c
mov eax, ebx
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x3c
mov edx, dword [ebp + 8]
call fcn.00405200
mov eax, dword [ebx + 0x104]
cmp byte [ebx + 0x108], 0x3e
je 0x407781
cmp eax, 0xff
lea edx, [eax + 1]
je 0x407569
mov byte [ebx + eax + 4], 0x3e
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x3e
mov eax, dword [esp + 0x1c]
mov dword [ebx + 0x118], eax
jmp case.default.0x4076b9
mov esi, dword [ebx + 0x114]
test esi, esi
je case.0x405238.49
mov eax, dword [esi + 4]
mov edx, dword [edx + 4]
mov eax, dword [eax + 8]
test eax, eax
je 0x4067bc
cmp dword [eax], 0x2b
jne case.0x405238.49
test edx, edx
jg 0x4067b2
jmp 0x407b3f
cmp dword [eax], 0x2b
jne case.0x405238.49
test edx, edx
je 0x4067d1
mov eax, dword [eax + 8]
sub edx, 1
test eax, eax
jne 0x4067a5
mov ecx, 1
test edx, edx
jne case.0x405238.49
test cl, cl
jne case.0x405238.49
mov edx, dword [eax + 4]
test edx, edx
je case.0x405238.49
cmp dword [edx], 0x2b
je 0x407438
mov eax, dword [esi]
mov dword [ebx + 0x114], eax
mov eax, ebx
call fcn.00405200
mov dword [ebx + 0x114], esi
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406831
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 6
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406fc2
cmp eax, 0xff
movzx edx, byte [esi + str.parm]
jne 0x406810
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406815
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x4068a8
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x18
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406f40
cmp eax, 0xff
movzx edx, byte [esi + str.construction_vtable_for]
jne 0x406887
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x40688c
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406921
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0xd
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.typeinfo_for]
jne 0x406900
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406905
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406998
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x12
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.typeinfo_name_for]
jne 0x406977
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x40697c
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406a11
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 0x10
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.36
cmp eax, 0xff
movzx edx, byte [esi + str.typeinfo_fn_for]
jne 0x4069f0
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x4069f5
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x406a88
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 8
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406de5
cmp eax, 0xff
movzx edx, byte [esi + str.lambda_]
jne 0x406a67
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406a6c
mov edx, dword [edx + 4]
mov eax, ebx
xor esi, esi
lea edi, [ebx + 4]
call fcn.00405200
mov eax, dword [ebx + 0x104]
jmp 0x406b09
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 8
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406cc0
cmp eax, 0xff
movzx edx, byte [esi + str.__clone]
jne 0x406ae8
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406aed
mov edx, dword [edx + 4]
mov eax, ebx
call fcn.00405200
mov edx, dword [ebp + 8]
mov eax, ebx
call fcn.00405200
jmp case.default.0x4076b9
mov eax, dword [edx + 8]
cmp dword [eax], 0x33
jne case.0x405238.49
mov edx, dword [eax + 8]
cmp dword [edx], 0x34
jne case.0x405238.49
mov edx, dword [eax + 4]
mov eax, ebx
call fcn.00408e60
mov edx, dword [ebp + 4]
mov eax, ebx
call fcn.00408d90
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov edx, dword [eax + 4]
mov eax, ebx
call fcn.00408e60
mov eax, ebx
mov edx, 0x41967d
call fcn.00405150
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov edx, dword [eax + 8]
mov eax, ebx
call fcn.00408e60
jmp case.default.0x4076b9
mov eax, dword [ebp + 4]
lea esi, [esp + 0x38]
mov dword [esp + 4], 0x419696
mov ebp, esi
mov dword [esp], esi
add eax, 1
mov dword [esp + 8], eax
call sub.msvcrt.dll_sprintf
mov edx, dword [ebp]
add ebp, 4
lea eax, [edx - 0x1010101]
not edx
and eax, edx
and eax, 0x80808080
je 0x406be8
mov edx, eax
shr edx, 0x10
test eax, 0x8080
cmove eax, edx
lea edx, [ebp + 2]
cmove ebp, edx
add al, al
mov eax, dword [ebx + 0x104]
sbb ebp, 3
sub ebp, esi
je 0x406c96
lea edx, [ebx + 4]
xor edi, edi
mov dword [esp + 0x1c], edx
jmp 0x406c4c
mov ecx, eax
add eax, 1
add edi, 1
cmp edi, ebp
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406c96
cmp eax, 0xff
movzx edx, byte [esi + edi]
jne 0x406c30
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406c35
cmp eax, 0xff
lea edx, [eax + 1]
je 0x4070d4
mov byte [ebx + eax + 4], 0x7d
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x7d
jmp case.default.0x4076b9
mov edx, dword [ebp + 8]
mov eax, ebx
call fcn.00405200
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
lea edx, [eax + 1]
je 0x4074b8
mov byte [ebx + eax + 4], 0x5d
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x5d
jmp case.default.0x4076b9
mov edx, dword [ebp + 4]
mov edi, dword [edx + 4]
movzx ecx, byte [edi]
sub ecx, 0x61
cmp cl, 0x19
jbe 0x4072b2
mov ebp, dword [edx + 8]
test ebp, ebp
je case.default.0x4076b9
lea edx, [ebx + 4]
mov eax, dword [ebx + 0x104]
xor esi, esi
mov dword [esp + 0x1c], edx
jmp 0x406d46
mov ecx, eax
add eax, 1
add esi, 1
cmp ebp, esi
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.default.0x4076b9
cmp eax, 0xff
movzx edx, byte [edi + esi]
jne 0x406d26
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406d2b
mov edx, dword [ebp + 4]
cmp dword [edx], 4
jne 0x405243
lea edx, [ebp + 4]
mov eax, ebx
call fcn.00408ba0
jmp case.default.0x4076b9
mov edx, dword [ebp + 4]
mov eax, ebx
call fcn.00405200
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
lea edx, [eax + 1]
je 0x4074f0
mov byte [ebx + eax + 4], 0x29
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x29
jmp case.default.0x4076b9
mov edx, dword [ebp + 4]
mov eax, ebx
xor si, si
lea edi, [ebx + 4]
call fcn.00405200
mov eax, dword [ebx + 0x104]
jmp 0x406e1d
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 2
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406e66
cmp eax, 0xff
movzx edx, byte [esi + 0x419703]
jne 0x406e00
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406e05
mov eax, dword [ebp + 8]
lea esi, [esp + 0x38]
mov dword [esp + 4], 0x419696
mov ebp, esi
mov dword [esp], esi
add eax, 1
mov dword [esp + 8], eax
call sub.msvcrt.dll_sprintf
mov edx, dword [ebp]
add ebp, 4
lea eax, [edx - 0x1010101]
not edx
and eax, edx
and eax, 0x80808080
je 0x406e86
mov edx, eax
shr edx, 0x10
test eax, 0x8080
cmove eax, edx
lea edx, [ebp + 2]
cmove ebp, edx
add al, al
mov eax, dword [ebx + 0x104]
sbb ebp, 3
sub ebp, esi
je 0x406c96
lea edx, [ebx + 4]
xor edi, edi
mov dword [esp + 0x1c], edx
jmp 0x406ef0
mov ecx, eax
add eax, 1
add edi, 1
cmp edi, ebp
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406c96
cmp eax, 0xff
movzx edx, byte [esi + edi]
jne 0x406ed0
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406ed5
mov edx, dword [ebp + 4]
mov eax, ebx
xor si, si
lea edi, [ebx + 4]
call fcn.00405200
mov eax, dword [ebx + 0x104]
jmp 0x406f79
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 4
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.0x405238.7
cmp eax, 0xff
movzx edx, byte [esi + str._in_]
jne 0x406f58
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406f5d
mov eax, dword [ebp + 4]
lea esi, [esp + 0x38]
mov dword [esp + 4], 0x419696
mov ebp, esi
mov dword [esp], esi
add eax, 1
mov dword [esp + 8], eax
call sub.msvcrt.dll_sprintf
mov edx, dword [ebp]
add ebp, 4
lea eax, [edx - 0x1010101]
not edx
and eax, edx
and eax, 0x80808080
je 0x406fe2
mov edx, eax
shr edx, 0x10
test eax, 0x8080
cmove eax, edx
lea edx, [ebp + 2]
cmove ebp, edx
add al, al
mov eax, dword [ebx + 0x104]
sbb ebp, 3
sub ebp, esi
je 0x406c96
lea edx, [ebx + 4]
xor edi, edi
mov dword [esp + 0x1c], edx
jmp 0x407050
mov ecx, eax
add eax, 1
add edi, 1
cmp edi, ebp
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x406c96
cmp eax, 0xff
movzx edx, byte [esi + edi]
jne 0x407030
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x407035
mov ebp, dword [esp + 0x1c]
mov eax, ebx
mov edi, dword [ebx + 0x124]
mov edx, dword [ebp + 8]
call fcn.00405200
cmp edi, dword [ebx + 0x124]
jne case.default.0x4076b9
cmp dword [ebx + 0x104], esi
jne case.default.0x4076b9
sub esi, 2
mov dword [ebx + 0x104], esi
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x406ca4
mov edi, dword [eax + 0xc]
mov ebp, dword [eax + 8]
test edi, edi
je case.default.0x4076b9
lea edx, [ebx + 4]
mov eax, dword [ebx + 0x104]
xor esi, esi
mov dword [esp + 0x1c], edx
jmp 0x407150
mov ecx, eax
add eax, 1
add esi, 1
cmp edi, esi
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je case.default.0x4076b9
cmp eax, 0xff
movzx edx, byte [ebp + esi]
jne 0x407130
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0xff
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x407135
cmp eax, 0xff
lea edx, [eax + 1]
je 0x407866
mov byte [ebx + eax + 4], 0x2e
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x2e
jmp case.0x405238.7
mov esi, dword [edx + 4]
mov edi, dword [edx + 8]
add edi, esi
cmp esi, edi
jae case.default.0x4076b9
lea eax, [ebx + 4]
mov dword [esp + 0x1c], eax
jmp 0x40720c
mov edx, dword [ebx + 0x104]
cmp edx, 0xff
lea ecx, [edx + 1]
je 0x407270
mov byte [ebx + edx + 4], al
mov dword [ebx + 0x104], ecx
mov byte [ebx + 0x108], al
add esi, 1
cmp edi, esi
jbe case.default.0x4076b9
mov eax, edi
sub eax, esi
cmp eax, 3
movzx eax, byte [esi]
jle 0x4071e0
cmp al, 0x5f
jne 0x4071e0
cmp byte [esi + 1], 0x5f
jne 0x4071e0
cmp byte [esi + 2], 0x55
jne 0x4071e0
lea ebp, [esi + 3]
cmp edi, ebp
jbe 0x4071e0
mov dword [esp + 0x20], esi
xor ecx, ecx
mov esi, eax
jmp 0x40724f
movsx eax, dl
sub eax, 0x30
shl ecx, 4
add ebp, 1
add ecx, eax
cmp ebp, edi
je 0x407968
movzx edx, byte [ebp]
lea eax, [edx - 0x30]
cmp al, 9
jbe 0x407239
lea eax, [edx - 0x41]
cmp al, 5
ja 0x4072dd
movsx eax, dl
sub eax, 0x37
jmp 0x40723f
mov edx, dword [ebx + 0x110]
mov byte [esp + 0x18], al
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], edx
mov edx, dword [esp + 0x1c]
mov dword [esp], edx
call dword [ebx + 0x10c]
mov ecx, 1
xor edx, edx
add dword [ebx + 0x124], 1
movzx eax, byte [esp + 0x18]
jmp 0x4071f1
cmp eax, 0xff
je 0x4078ce
mov byte [ebx + eax + 4], 0x20
add eax, 1
mov byte [ebx + 0x108], 0x20
mov dword [ebx + 0x104], eax
mov edx, dword [ebp + 4]
mov edi, dword [edx + 4]
jmp 0x406d0a
lea eax, [edx - 0x61]
cmp al, 5
ja 0x407bac
movsx eax, dl
sub eax, 0x57
jmp 0x40723f
mov eax, dword [ebx + 0x104]
jmp 0x405686
mov eax, dword [ebx]
and eax, 0x20
jmp 0x40589f
mov ecx, dword [ebx + 0x118]
lea edx, [edx + 8]
mov eax, ebx
call fcn.004088c0
jmp 0x405818
mov eax, dword [ebx + 0x104]
xor esi, esi
lea edi, [ebx + 4]
jmp 0x407351
mov ecx, eax
add eax, 1
add esi, 1
cmp esi, 5
mov byte [ebx + ecx + 4], dl
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], dl
je 0x405648
cmp eax, 0xff
movzx edx, byte [esi + str._Sat]
jne 0x407330
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [ebx + 0x10c]
mov eax, 1
xor ecx, ecx
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x407335
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
je 0x407935
mov byte [ebx + eax + 4], 0x28
add eax, 1
mov byte [ebx + 0x108], 0x28
mov dword [ebx + 0x104], eax
mov eax, dword [ebp + 4]
mov edx, dword [eax + 4]
cmp dword [edx], 4
je 0x40782a
mov eax, ebx
call fcn.00405200
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
je 0x407973
mov byte [ebx + eax + 4], 0x29
add eax, 1
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], 0x29
jmp 0x405c7d
mov eax, dword [ebx + 0x110]
mov byte [ebx + esi + 4], 0
mov dword [esp + 4], esi
xor esi, esi
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov dword [ebx + 0x104], 0
add dword [ebx + 0x124], 1
jmp 0x405797
mov eax, dword [ebx + 0x120]
test eax, eax
jg 0x407452
jmp 0x40745c
cmp dword [edx], 0x2b
jne case.0x405238.49
test eax, eax
nop
je 0x40746c
mov edx, dword [edx + 8]
sub eax, 1
test edx, edx
jne 0x407444
test edx, edx
je case.0x405238.49
test eax, eax
jne case.0x405238.49
mov edx, dword [edx + 4]
test edx, edx
jne 0x4067e5
jmp case.0x405238.49
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x405269
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x406cde
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x406dce
mov eax, dword [ebx + 0x110]
mov byte [esp + 0x18], dl
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov ecx, 1
xor eax, eax
add dword [ebx + 0x124], 1
movzx edx, byte [esp + 0x18]
jmp 0x406104
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x406757
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x40671a
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x405ff5
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x405fc5
mov edx, dword [ebp + 8]
mov ecx, dword [edx]
test ecx, ecx
jne 0x405fb1
cmp dword [edx + 8], 1
jne 0x405fb1
cmp eax, 0x35
jne 0x405fb1
mov eax, dword [edx + 4]
movzx eax, byte [eax]
cmp al, 0x30
je 0x407c1d
cmp al, 0x31
jne 0x405fb1
mov edx, str.true
mov eax, ebx
call fcn.00405150
jmp case.default.0x4076b9
mov edx, dword [ebp + 8]
mov edi, dword [edx]
test edi, edi
jne 0x405fb1
cmp eax, 0x36
je 0x407c09
mov eax, ebx
sub esi, 2
call fcn.00405200
cmp esi, 4
ja case.default.0x4076b9
jmp dword [esi*4 + 0x41982c]
mov edx, 0x419684
mov eax, ebx
call fcn.00405150
jmp case.default.0x4076b9
mov edx, 0x419681
mov eax, ebx
call fcn.00405150
jmp case.default.0x4076b9
mov edx, 0x6c
mov eax, ebx
call fcn.00402e70
jmp case.default.0x4076b9
mov edx, 0x75
mov eax, ebx
jmp section..htext
mov edx, 0x419687
mov eax, ebx
call fcn.00405150
jmp case.default.0x4076b9
mov ecx, dword [esp + 0x20]
mov dword [ebx + 0x118], ecx
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov eax, 1
xor edx, edx
add dword [ebx + 0x124], 1
jmp 0x405674
cmp eax, 0xff
je 0x407a9e
mov byte [ebx + eax + 4], 0x20
add eax, 1
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], 0x20
jmp 0x40670c
cmp eax, 0xff
je 0x407b04
mov byte [ebx + eax + 4], 0x20
add eax, 1
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], 0x20
jmp 0x406749
cmp edx, 0xff
je 0x407a00
mov byte [ebx + edx + 4], 0x2d
add edx, 1
mov dword [ebx + 0x104], edx
mov byte [ebx + 0x108], 0x2d
jmp 0x406011
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
je 0x407b79
mov byte [ebx + eax + 4], 0x5b
add eax, 1
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], 0x5b
mov eax, dword [ebp + 8]
mov edx, dword [eax + 8]
mov eax, ebx
call fcn.00405200
mov eax, dword [ebx + 0x104]
cmp eax, 0xff
je 0x407b46
mov byte [ebx + eax + 4], 0x5d
add eax, 1
mov dword [ebx + 0x104], eax
mov byte [ebx + 0x108], 0x5d
jmp 0x405cf1
lea edx, [eax + 4]
mov eax, ebx
call fcn.00408ba0
jmp 0x4073d6
mov edx, dword [edx + 4]
cmp dword [edx + 8], 1
jne 0x405ca4
mov edx, dword [edx + 4]
cmp byte [edx], 0x3e
jne 0x405ca4
mov eax, ebx
mov edx, 0x28
call fcn.00402e70
mov eax, dword [ebp + 8]
jmp 0x405ca4
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov edx, 1
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x4071a9
mov esi, dword [edx + 4]
mov edi, str.JArray
mov ecx, 6
repe cmpsb byte [esi], byte es:[edi]
jne 0x4066f2
mov edx, dword [ebp + 8]
mov eax, ebx
call fcn.00405200
mov edx, 0x419556
mov eax, ebx
call fcn.00405150
jmp 0x406769
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x4072bd
mov eax, ebx
call fcn.00408d90
jmp 0x405ce4
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], eax
lea eax, [esp + 0x78]
mov dword [ebx + 0x114], eax
jmp 0x406648
mov dword [esp + 0x24], 1
jmp 0x40598a
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x4073ab
mov eax, esi
mov esi, dword [esp + 0x20]
jmp 0x4071e0
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x4073e7
mov edx, dword [ebp + 4]
mov eax, ebx
call fcn.00408e60
mov edx, 0x4196b4
mov eax, ebx
call fcn.00405150
jmp case.default.0x4076b9
mov eax, dword [esp + 0x78]
mov dword [ebx + 0x114], eax
jmp 0x406663
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp], ebp
mov dword [esp + 8], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x4066a5
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor edx, edx
add dword [ebx + 0x124], 1
jmp 0x4077b2
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x40605b
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
mov eax, dword [ebx]
xor edx, edx
add dword [ebx + 0x124], 1
and eax, 0x20
jmp 0x40588a
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x407767
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x40602b
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x40778c
mov edx, dword [edx + 4]
jmp 0x4065b6
xor ecx, ecx
jmp 0x4067c1
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x407810
mov eax, dword [ebx + 0x110]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [ebx + 0x10c]
xor eax, eax
add dword [ebx + 0x124], 1
jmp 0x4077dd
cmp edi, ebp
mov eax, esi
mov esi, dword [esp + 0x20]
jbe 0x4071e0
cmp ecx, 0xff
ja 0x4071e0
cmp dl, 0x5f
jne 0x4071e0
cmp dword [ebx + 0x104], 0xff
mov esi, ecx
je 0x407c2e
mov eax, dword [ebx + 0x104]
mov ecx, esi
mov esi, ebp
mov byte [ebx + 0x108], cl
mov byte [ebx + eax + 4], cl
add eax, 1
mov dword [ebx + 0x104], eax
jmp 0x407201
mov ecx, 1
jmp 0x406596
mov edx, 0x2d
mov eax, ebx
call fcn.00402e70
mov edx, dword [ebp + 8]
jmp 0x4076a6
mov edx, str.false
mov eax, ebx
call fcn.00405150
jmp case.default.0x4076b9
mov eax, dword [ebx + 0x110]
mov edx, dword [esp + 0x1c]
mov byte [ebx + 0x103], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edx
call dword [ebx + 0x10c]
mov dword [ebx + 0x104], 0
add dword [ebx + 0x124], 1
jmp 0x407bdd