Function at 0x406de0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, eax
push esi
push ebx
and esp, 0xfffffff0
sub esp, 0x110
mov eax, dword [0x51a10c]
mov dword [esp + 0x10c], eax
xor eax, eax
mov dword [esp + 0x2c], ecx
test ecx, ecx
je case.0x406e1c.45
mov ebx, dword [edi + 0x118]
test ebx, ebx
jne case.default.0x40b99e
mov eax, dword [esp + 0x2c]
mov esi, dword [eax]
cmp esi, 0x5f
ja case.0x406e1c.45
jmp dword [esi*4 + 0x4d181c]
lea esi, [edx - 0x52]
cmp esi, 1
ja 0x4094f6
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x40bbb2
add eax, 0x10
cmp dword [esp + 0x28], 4
jne 0x40aef8
mov dword [edi + 0x114], ecx
nop
mov dword [edi + 0x118], 1
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bac0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [esp + 0x38]
movd xmm0, dword [edi + 0x114]
movd xmm1, dword [esp + 0x2c]
mov dword [esp + 0x40], 0
mov dword [edi + 0x114], eax
mov eax, dword [edi + 0x110]
punpckldq xmm0, xmm1
mov dword [esp + 0x44], eax
movd eax, xmm1
movq qword [esp + 0x38], xmm0
mov eax, dword [eax + 0xc]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x28]
mov edx, 0x11
mov eax, edi
call sym._d_print_comp
mov esi, dword [esp + 0x40]
test esi, esi
je 0x40a731
mov eax, dword [esp + 0x38]
mov dword [edi + 0x114], eax
test ebx, ebx
je case.default.0x40b99e
mov eax, dword [esp + 0x20]
mov dword [edi + 0x110], eax
jmp case.default.0x40b99e
mov ecx, dword [edi + 0x114]
mov eax, ecx
test ecx, ecx
je 0x40ba8c
mov dword [esp + 0x28], ebx
lea esi, [esi]
mov ebx, dword [eax + 8]
test ebx, ebx
jne 0x406f2c
mov edx, dword [eax + 4]
mov edx, dword [edx]
lea ebx, [edx - 0x19]
cmp ebx, 2
ja 0x406f32
cmp esi, edx
je 0x40b056
mov eax, dword [eax]
test eax, eax
jne 0x406f10
lea eax, [esp + 0x38]
mov dword [esp + 0x38], ecx
mov ebx, dword [esp + 0x28]
mov dword [edi + 0x114], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x40], 0
mov dword [esp + 0x3c], eax
mov eax, dword [edi + 0x110]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x28], eax
jmp 0x406eb7
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bca2
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x2c]
mov ecx, dword [edi + 0x120]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x28], eax
test ecx, ecx
jne 0x40aa9b
xor ebx, ebx
cmp dword [eax], 5
je 0x40b57a
mov edx, dword [eax]
cmp edx, 0x24
je 0x40ae75
mov ecx, dword [edi + 0x114]
mov dword [esp + 0x24], ecx
mov ecx, dword [edi + 0x110]
cmp esi, edx
je 0x40b0c1
cmp edx, 0x25
je 0x40a746
movd xmm0, dword [esp + 0x24]
movd xmm7, dword [esp + 0x2c]
punpckldq xmm0, xmm7
lea eax, [esp + 0x38]
mov dword [esp + 0x40], 0
mov dword [edi + 0x114], eax
mov dword [esp + 0x44], ecx
movq qword [esp + 0x38], xmm0
jmp 0x406eb7
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x40703f
mov edx, 0x11
mov eax, edi
call sym._d_print_comp
mov eax, dword [esp + 0x2c]
mov ebx, dword [eax + 0x10]
test ebx, ebx
je case.default.0x40b99e
mov eax, dword [edi + 0x100]
cmp eax, 0xfd
ja 0x40b090
mov edx, 0x4d1575
mov eax, edi
call sym._d_append_string
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, dword [edi + 0x128]
mov esi, dword [edi + 0x100]
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
cmp dword [edi + 0x128], ebx
jne case.default.0x40b99e
mov eax, dword [edi + 0x100]
cmp eax, esi
jne case.default.0x40b99e
sub eax, 2
mov dword [edi + 0x100], eax
jmp case.default.0x40b99e
lea eax, [esp + 0x38]
movd xmm0, dword [edi + 0x114]
movd xmm3, dword [esp + 0x2c]
mov dword [esp + 0x40], 0
mov dword [edi + 0x114], eax
mov eax, dword [edi + 0x110]
mov edx, 0x11
punpckldq xmm0, xmm3
mov dword [esp + 0x44], eax
movd eax, xmm3
mov ecx, dword [eax + 0x10]
movq qword [esp + 0x38], xmm0
mov eax, edi
call sym._d_print_comp
mov esi, dword [esp + 0x40]
test esi, esi
je 0x40aeb7
mov eax, dword [esp + 0x38]
mov dword [edi + 0x114], eax
jmp case.default.0x40b99e
mov esi, dword [esp + 0x2c]
mov edx, 0x11
mov eax, edi
mov ecx, dword [esi + 0xc]
call sym._d_print_comp
mov edx, 0x4d1578
mov eax, edi
call sym._d_append_string
mov ebx, dword [esi + 0x10]
cmp dword [ebx], 0x49
je 0x40b226
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd38
lea esp, [ebp - 0xc]
mov ecx, ebx
mov eax, edi
mov edx, 0x11
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0xc]
cmp dword [ecx], 0x28
jne 0x40ac46
mov eax, dword [ecx + 0xc]
mov ebx, dword [eax + 0x10]
cmp ebx, 6
ja 0x40af2b
test ebx, ebx
je 0x4071ac
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x10]
mov edx, dword [eax]
test edx, edx
je 0x40b96e
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b474
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov edx, 0x11
mov byte [edi + eax], 0x28
mov eax, edi
mov byte [edi + 0x104], 0x28
call sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b43f
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x29
mov eax, dword [esp + 0x2c]
mov byte [edi + 0x104], 0x29
cmp dword [eax], 0x3f
je 0x40b42e
cmp ebx, 8
je 0x40b3e9
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bce8
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov ebx, dword [esp + 0x2c]
mov ecx, dword [ebx + 0xc]
test ecx, ecx
je 0x40ac4d
mov edx, 0x11
mov eax, edi
call sym._d_print_comp
cmp dword [ebx], 0x56
je 0x40ac56
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x40729f
mov ebx, 0x2e
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b6cd
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], bl
mov byte [edi + 0x104], bl
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcac
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcf2
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_expr_op
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0xc]
mov ebx, dword [eax + 0x10]
test ecx, ecx
je 0x407313
mov edx, 0x11
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b2bd
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov ecx, ebx
mov edx, 0x11
mov byte [edi + eax], 0x7b
mov eax, edi
mov byte [edi + 0x104], 0x7b
call sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b288
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x7d
mov byte [edi + 0x104], 0x7d
jmp case.default.0x40b99e
mov eax, dword [edi + 0x100]
mov ebx, str.global_destructors_keyed_to
mov esi, 0x4d17c9
jmp 0x4073df
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a37e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x4073c0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d17c9
je 0x40a37e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x4073c2
mov eax, dword [edi + 0x100]
mov ebx, str.template_parameter_object_for
mov esi, 0x4d15b2
jmp 0x4074a3
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d15b2
je 0x40a3ab
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407480
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a3ab
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407482
mov eax, dword [edi + 0x100]
mov ebx, str.guard_variable_for
mov esi, 0x4d1696
jmp 0x40755f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a2eb
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407540
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1696
je 0x40a2eb
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407542
mov eax, dword [edi + 0x100]
mov ebx, str.non_virtual_thunk_to
mov esi, 0x4d1645
jmp 0x40761f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a45f
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407600
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1645
je 0x40a45f
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407602
mov eax, dword [edi + 0x100]
mov ebx, str.covariant_return_thunk_to
mov esi, 0x4d1672
jmp 0x4076df
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a4b6
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x4076c0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1672
je 0x40a4b6
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x4076c2
mov eax, dword [edi + 0x100]
mov ebx, str.typeinfo_name_for
jmp 0x4077a3
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d161e
je 0x40a510
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407780
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d161e
je 0x40a510
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407782
mov eax, dword [edi + 0x100]
mov ebx, str.java_Class_for
mov esi, 0x4d1682
jmp 0x40785f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a56a
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407840
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1682
je 0x40a56a
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407842
mov eax, dword [edi + 0x100]
mov ebx, str.typeinfo_fn_for
mov esi, 0x4d162f
jmp 0x40791f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a5c4
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407900
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a5c4
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407902
mov eax, dword [edi + 0x100]
mov ebx, str.virtual_thunk_to
mov esi, 0x4d1657
jmp 0x4079df
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a6c2
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x4079c0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1657
je 0x40a6c2
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x4079c2
mov eax, dword [edi + 0x100]
mov ebx, str.typeinfo_for
mov esi, 0x4d160b
jmp 0x407aa3
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d160b
je 0x40a6ef
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407a80
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a6ef
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407a82
mov eax, dword [edi + 0x100]
mov ebx, str.construction_vtable_for
mov esi, 0x4d15f8
jmp 0x407b63
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d15f8
je 0x409e46
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407b40
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409e46
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407b42
mov eax, dword [edi + 0x100]
mov ebx, str.non_transaction_clone_for
mov esi, 0x4d1727
jmp 0x407c1f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a042
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407c00
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a042
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407c02
mov eax, dword [edi + 0x100]
mov ebx, str.vtable_for
mov esi, 0x4d15d6
jmp 0x407cdf
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409f58
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407cc0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409f58
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407cc2
mov eax, dword [edi + 0x100]
mov ebx, str.unnamed_type
mov esi, 0x4d17e3
jmp 0x407da3
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d17e3
je 0x40a0c9
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407d80
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a0c9
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407d82
mov eax, dword [edi + 0x100]
mov ebx, str.VTT_for
mov esi, 0x4d15df
jmp 0x407e5f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409efe
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407e40
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409efe
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407e42
mov eax, dword [edi + 0x100]
mov ebx, str.transaction_clone_for
mov esi, 0x4d170c
jmp 0x407f23
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d170c
je 0x40a06f
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x407f00
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a06f
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x407f02
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b253
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x7e
mov byte [edi + 0x104], 0x7e
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd3d
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [edi + 0x100]
mov ebx, str.lambda
mov esi, 0x4d17d1
jmp 0x40801f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a780
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408000
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40b327
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408002
mov eax, dword [edi + 0x100]
mov ebx, str.initializer_for_module
mov esi, 0x4d15ca
jmp 0x4080df
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a53d
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x4080c0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a53d
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x4080c2
mov eax, dword [esp + 0x2c]
mov ebx, dword [eax + 0xc]
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40a9c6
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], bl
mov byte [edi + 0x104], bl
jmp case.default.0x40b99e
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, str.__clone
mov esi, 0x4d17ec
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
jmp 0x4081df
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409d10
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x4081c0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409d10
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x4081c2
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, str._abi:
mov esi, 0x4d1574
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
jmp 0x40829f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409d10
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408280
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409d10
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408282
mov eax, dword [esp + 0x2c]
mov ebx, dword [edi + 0x120]
mov ecx, dword [eax + 0xc]
test ebx, ebx
jne 0x40aa34
mov edx, ecx
mov eax, edi
call sym._d_find_pack
xor edx, edx
test eax, eax
je 0x40aa34
lea esi, [esi]
cmp dword [eax], 0x30
jne 0x40b083
mov esi, dword [eax + 0xc]
test esi, esi
je 0x40b083
mov eax, dword [eax + 0x10]
add edx, 1
test eax, eax
jne 0x408330
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], ecx
lea esi, cs:[esi]
nop
mov dword [edi + 0x124], ebx
mov ecx, dword [esp + 0x24]
mov eax, edi
mov edx, 0x11
add ebx, 1
call sym._d_print_comp
mov eax, dword [esp + 0x28]
cmp ebx, eax
je case.default.0x40b99e
mov dword [esp + 0x2c], ebx
mov eax, dword [edi + 0x100]
mov esi, 0x4d1575
jmp 0x4083e4
mov ecx, eax
lea eax, [ecx + 1]
add esi, 1
mov edx, 0x4d1577
mov dword [edi + 0x100], eax
mov byte [edi + ecx], bl
mov byte [edi + 0x104], bl
cmp edx, esi
je 0x409d4d
movzx ebx, byte [esi]
cmp eax, 0xff
jne 0x4083c0
mov eax, dword [edi + 0x10c]
add esi, 1
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], bl
mov byte [edi + 0x104], bl
cmp esi, 0x4d1577
je 0x409d4d
movzx ebx, byte [esi]
mov ecx, 1
jmp 0x4083c2
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd2e
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov esi, dword [esp + 0x2c]
mov eax, dword [edi + 0x120]
mov ecx, dword [esi + 0xc]
lea edx, [ecx + 1]
cmp eax, edx
jle 0x40aaa4
mov eax, dword [edi + 0x110]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0xc]
test ecx, ecx
je 0x40b019
test eax, eax
je case.0x406e1c.45
mov edx, ecx
jmp 0x4084b8
test edx, edx
je 0x40b019
mov eax, dword [eax + 0x10]
sub edx, 1
test eax, eax
jne 0x4084b0
jmp case.0x406e1c.45
mov eax, dword [esp + 0x2c]
mov ebx, dword [edi + 0x148]
mov edx, 0x11
mov esi, dword [edi + 0x114]
mov dword [edi + 0x114], 0
mov dword [edi + 0x148], eax
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
cmp byte [edi + 0x104], 0x3c
je 0x40b1e0
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b1ab
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov edx, 0x11
mov byte [edi + eax], 0x3c
mov eax, dword [esp + 0x2c]
mov byte [edi + 0x104], 0x3c
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
cmp byte [edi + 0x104], 0x3e
je 0x40b19a
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b165
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x3e
mov byte [edi + 0x104], 0x3e
mov dword [edi + 0x114], esi
mov dword [edi + 0x148], ebx
jmp case.default.0x40b99e
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, str._friend_
mov esi, 0x4d17f5
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
jmp 0x4085e3
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d17f5
je case.default.0x40b99e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x4085c0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x4085c2
mov eax, dword [edi + 0x100]
mov ebx, str.template
mov esi, 0x4d1807
jmp 0x40869f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409f85
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408680
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409f85
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408682
mov eax, dword [edi + 0x100]
mov ebx, str.typename
mov esi, 0x4d17fe
jmp 0x40875f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408740
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d17fe
je case.default.0x40b99e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408742
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b37f
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x3c
mov eax, dword [esp + 0x2c]
mov byte [edi + 0x104], 0x3c
mov esi, dword [eax + 0xc]
mov dword [esp + 0x2c], 0
test esi, esi
jne 0x40882e
jmp 0x40a48c
mov ecx, esi
mov edx, 0x11
mov eax, edi
call sym._d_print_comp
mov esi, dword [esi + 0x10]
add dword [esp + 0x2c], 1
test esi, esi
je 0x40a48c
mov edx, dword [esp + 0x2c]
test edx, edx
je 0x408810
mov eax, dword [edi + 0x100]
mov ebx, 0x4d1575
jmp 0x4088a3
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1577
je 0x408810
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408880
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1577
je 0x408810
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408882
mov eax, dword [edi + 0x100]
mov ebx, str.TLS_init_function_for
mov esi, 0x4d16ad
jmp 0x40895f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a09c
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408940
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d16ad
je 0x40a09c
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408942
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x10]
cmp dword [eax], 0x3c
jne case.0x406e1c.45
mov eax, dword [eax + 0x10]
cmp dword [eax], 0x3d
jne case.0x406e1c.45
mov esi, dword [esp + 0x2c]
mov edx, 0x11
mov eax, edi
mov ecx, esi
call sym._d_maybe_print_fold_expression
test eax, eax
jne case.default.0x40b99e
mov ecx, esi
mov edx, 0x11
mov eax, edi
call sym._d_maybe_print_designated_init
test eax, eax
jne case.default.0x40b99e
mov eax, dword [esi + 0x10]
mov ebx, dword [esi + 0xc]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov esi, dword [eax + 0xc]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], esi
mov esi, dword [eax + 0x10]
mov dword [esp + 4], 0x4d1744
mov eax, dword [ebx + 0xc]
mov eax, dword [eax]
mov dword [esp], eax
call sym._strcmp
mov ecx, dword [esp + 0x28]
test eax, eax
jne 0x40bb40
mov edx, 0x11
mov eax, edi
call sym._d_print_subexpr
mov ecx, ebx
mov edx, 0x11
mov eax, edi
call sym._d_print_expr_op
mov ecx, dword [esp + 0x2c]
mov edx, 0x11
mov eax, edi
call sym._d_print_subexpr
mov eax, edi
mov edx, 0x4d1747
call sym._d_append_string
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bc93
lea esp, [ebp - 0xc]
mov ecx, esi
mov eax, edi
mov edx, 0x11
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_subexpr
mov esi, dword [esp + 0x2c]
mov eax, dword [esi + 0x10]
cmp dword [eax], 0x3a
jne case.0x406e1c.45
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx + 0xc]
mov eax, dword [eax]
cmp byte [eax + 1], 0x63
je 0x40b645
mov esi, dword [esp + 0x2c]
mov edx, 0x11
mov eax, edi
mov ecx, esi
call sym._d_maybe_print_fold_expression
test eax, eax
jne case.default.0x40b99e
mov ecx, esi
mov edx, 0x11
mov eax, edi
call sym._d_maybe_print_designated_init
test eax, eax
jne case.default.0x40b99e
mov eax, dword [esi + 0xc]
cmp dword [eax], 0x33
je 0x40bac5
mov esi, dword [esp + 0x2c]
mov dword [esp + 4], 0x4d173e
mov eax, dword [esi + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov dword [esp], eax
call sym._strcmp
mov edx, dword [esi + 0x10]
mov ecx, dword [edx + 0xc]
test eax, eax
jne 0x408b3d
cmp dword [ecx], 3
je 0x40bb1a
mov edx, 0x11
mov eax, edi
call sym._d_print_subexpr
mov eax, dword [esp + 0x2c]
mov ebx, dword [eax + 0xc]
mov eax, dword [ebx + 0xc]
mov esi, dword [eax]
mov dword [esp + 4], 0x4d1741
mov dword [esp], esi
call sym._strcmp
test eax, eax
je 0x40ba59
mov dword [esp + 4], 0x4d173e
mov dword [esp], esi
call sym._strcmp
test eax, eax
jne 0x40bc35
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov eax, dword [eax + 0x10]
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_subexpr
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
cmp dword [eax], 0x33
jne case.default.0x40b99e
mov eax, dword [eax + 0xc]
cmp dword [eax + 8], 1
jne case.default.0x40b99e
mov eax, dword [eax + 4]
cmp byte [eax], 0x3e
jne case.default.0x40b99e
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd1a
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x29
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_char
mov eax, dword [esp + 0x2c]
mov esi, dword [eax + 0xc]
mov ebx, dword [eax + 0x10]
mov eax, dword [esi]
cmp eax, 0x33
je 0x40acf4
cmp eax, 0x35
je 0x40aeff
mov ecx, esi
mov edx, 0x11
mov eax, edi
call sym._d_print_expr_op
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd56
lea esp, [ebp - 0xc]
mov ecx, ebx
mov eax, edi
mov edx, 0x11
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_subexpr
mov eax, dword [esp + 0x2c]
mov esi, dword [eax + 0x10]
mov ebx, dword [eax + 0xc]
test esi, esi
je case.default.0x40b99e
mov eax, dword [edi + 0x100]
add esi, ebx
jmp 0x408c9f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408c80
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, esi
je case.default.0x40b99e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408c82
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, str._requires
mov esi, 0x4d1819
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
jmp 0x408d5f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a4e3
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408d40
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a4e3
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408d42
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, 0x4d177f
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
jmp 0x408e23
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1782
je case.default.0x40b99e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408e00
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d1782
je case.default.0x40b99e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408e02
mov eax, dword [edi + 0x100]
mov ebx, str.operator
mov esi, 0x4d173a
jmp 0x408edf
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a597
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408ec0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a597
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408ec2
mov eax, dword [edi + 0x100]
mov ebx, str.operator
mov esi, 0x4d173a
jmp 0x408f9f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a3d8
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x408f80
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a3d8
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x408f82
mov eax, dword [esp + 0x2c]
mov ebx, 0x4d1728
mov esi, 0x4d1730
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx + 8]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x100]
jmp 0x40905f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a5f1
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409040
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a5f1
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409042
mov eax, dword [esp + 0x2c]
mov ebx, dword [eax + 0xc]
test ebx, ebx
jne 0x40ab40
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd06
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x4d1783
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_string
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 4]
mov ebx, dword [eax]
test esi, esi
je case.default.0x40b99e
mov eax, dword [edi + 0x100]
add esi, ebx
jmp 0x40915f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409140
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, esi
je case.default.0x40b99e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409142
mov eax, dword [edi + 0x100]
mov ebx, str.hidden_alias_for
mov esi, 0x4d16f5
jmp 0x40921f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a432
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409200
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d16f5
je 0x40a432
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409202
mov eax, dword [edi + 0x100]
mov ebx, str.java_resource
mov esi, 0x4d1773
jmp 0x4092df
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a345
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x4092c0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a345
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x4092c2
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcfc
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b1f1
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x5b
mov byte [edi + 0x104], 0x5b
lea esi, cs:[esi]
nop
mov esi, dword [esp + 0x2c]
mov eax, edi
mov edx, 0x11
mov ecx, dword [esi + 0xc]
call sym._d_print_comp
mov esi, dword [esi + 0x10]
mov eax, dword [edi + 0x100]
mov dword [esp + 0x2c], esi
test esi, esi
je 0x409d29
mov ebx, 0x4d1575
mov esi, 0x4d1577
jmp 0x40941b
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x4093b0
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409400
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x4093b0
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409402
mov eax, dword [edi + 0x114]
mov dword [edi + 0x114], 0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x2c]
mov ebx, dword [eax + 0xc]
test ebx, ebx
je case.0x406e1c.45
lea esi, [esp + 0x48]
mov eax, dword [edi + 0x110]
mov dword [esp + 0x28], 0
xor edx, edx
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], eax
mov eax, esi
mov dword [eax], edx
mov edx, dword [esp + 0x24]
mov ecx, eax
mov dword [eax + 8], 0
mov dword [eax + 0xc], edx
mov edx, dword [ebx]
add dword [esp + 0x28], 1
mov dword [eax + 4], ebx
cmp edx, 0x4f
je 0x406e2f
ja 0x406e23
lea esi, [edx - 0x1c]
cmp esi, 5
jbe 0x406e2f
mov dword [edi + 0x114], eax
mov esi, dword [esp + 0x20]
cmp edx, 2
je 0x40b4b0
cmp edx, 4
je 0x40b538
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
cmp dword [ebx], 4
jne 0x409534
mov eax, dword [esp + 0x38]
mov dword [edi + 0x110], eax
mov ebx, dword [esp + 0x28]
shl ebx, 4
add ebx, esi
mov eax, dword [ebx - 8]
test eax, eax
je 0x40a9fb
sub ebx, 0x10
cmp ebx, esi
jne 0x40953d
mov eax, dword [esp + 0x1c]
mov dword [edi + 0x114], eax
jmp case.default.0x40b99e
mov eax, dword [esp + 0x2c]
mov esi, dword [eax + 0x10]
mov ebx, dword [eax + 0xc]
test esi, esi
je case.default.0x40b99e
mov eax, dword [edi + 0x100]
add esi, ebx
jmp 0x40959f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409580
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409582
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b2f2
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x40
mov byte [edi + 0x104], 0x40
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd10
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [edi + 0x100]
mov ebx, str.global_constructors_keyed_to
mov esi, 0x4d17ac
jmp 0x4096a3
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d17ac
je 0x40a1e5
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409680
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a1e5
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409682
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 4]
mov ebx, dword [eax]
test esi, esi
je 0x409d56
mov eax, dword [edi + 0x100]
add esi, ebx
jmp 0x40975f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409d56
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409740
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409d56
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409742
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b0fb
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x28
mov eax, dword [esp + 0x2c]
mov byte [edi + 0x104], 0x28
mov ecx, dword [eax + 0x10]
mov eax, edi
mov edx, 0x11
call sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40ac60
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x29
mov byte [edi + 0x104], 0x29
jmp case.default.0x40b99e
mov edx, dword [edi + 0x114]
movd xmm2, dword [esp + 0x2c]
lea esi, [esp + 0x48]
mov dword [esp + 0x50], 0
mov eax, dword [edi + 0x110]
mov dword [edi + 0x114], esi
mov ecx, esi
mov ebx, 1
movd xmm0, edx
mov dword [esp + 0x28], edx
punpckldq xmm0, xmm2
mov dword [esp + 0x54], eax
mov eax, edx
movq qword [esp + 0x48], xmm0
test edx, edx
jne 0x4098c3
jmp 0x40baef
mov edx, dword [eax + 8]
test edx, edx
jne 0x4098bd
cmp ebx, 3
ja case.0x406e1c.45
movdqu xmm0, xmmword [eax]
mov edx, ebx
add ebx, 1
shl edx, 4
movups xmmword [esp + edx + 0x48], xmm0
mov dword [esp + edx + 0x48], ecx
lea ecx, [esi + edx]
mov dword [edi + 0x114], ecx
mov dword [eax + 8], 1
mov eax, dword [eax]
test eax, eax
je 0x4098d0
mov edx, dword [eax + 4]
mov edx, dword [edx]
sub edx, 0x19
cmp edx, 2
jbe 0x409888
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
mov eax, dword [esp + 0x28]
mov dword [edi + 0x114], eax
mov eax, dword [esp + 0x50]
test eax, eax
jne case.default.0x40b99e
lea esi, [esp + 0x4c]
cmp ebx, 1
jbe 0x40992c
lea esi, cs:[esi]
lea esi, [esi]
sub ebx, 1
mov edx, 0x11
mov eax, ebx
shl eax, 4
mov ecx, dword [esi + eax]
mov eax, edi
call sym._d_print_mod
cmp ebx, 1
jne 0x409910
mov eax, dword [edi + 0x114]
mov ecx, dword [esp + 0x2c]
mov edx, 0x11
mov dword [esp], eax
mov eax, edi
call sym._d_print_array_type
jmp case.default.0x40b99e
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x4099b5
movd xmm4, eax
lea eax, [esp + 0x38]
mov edx, 0x11
movd xmm0, dword [edi + 0x114]
mov dword [edi + 0x114], eax
mov eax, dword [edi + 0x110]
mov dword [esp + 0x40], 0
punpckldq xmm0, xmm4
mov dword [esp + 0x44], eax
mov eax, edi
movq qword [esp + 0x38], xmm0
call sym._d_print_comp
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
mov dword [edi + 0x114], eax
test ecx, ecx
jne case.default.0x40b99e
mov edx, 0x20
mov eax, edi
call sym._d_append_char
mov eax, dword [edi + 0x114]
mov ecx, dword [esp + 0x2c]
mov edx, 0x11
mov dword [esp], eax
mov eax, edi
call sym._d_print_function_type
jmp case.default.0x40b99e
mov eax, dword [edi + 0x100]
mov ebx, str.decltype__
jmp 0x409a23
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d177e
je 0x40a372
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409a00
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d177e
je 0x40a372
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409a02
mov eax, dword [esp + 0x2c]
lea ebx, [esp + 0xa8]
mov eax, dword [eax + 0xc]
mov dword [esp + 8], 0x4d121c
mov dword [esp + 4], 0x19
mov dword [esp + 0xc], eax
mov dword [esp], ebx
call dbg.__mingw_snprintf
test eax, eax
js 0x409ac7
add eax, 1
cmp eax, 0x19
ja 0x40acef
mov dword [esp], ebx
call sym._strlen
test eax, eax
je case.default.0x40b99e
mov edx, dword [edi + 0x100]
lea esi, [ebx + eax]
jmp 0x409b1f
mov ecx, edx
lea edx, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], edx
mov byte [edi + ecx], al
mov byte [edi + 0x104], al
cmp esi, ebx
je case.default.0x40b99e
movzx eax, byte [ebx]
cmp edx, 0xff
jne 0x409b00
mov edx, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], al
mov dword [esp + 8], edx
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx eax, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], al
mov byte [edi + 0x104], al
cmp esi, ebx
je case.default.0x40b99e
movzx eax, byte [ebx]
mov ecx, 1
jmp 0x409b02
mov eax, dword [edi + 0x100]
mov ebx, str.reference_temporary_
mov esi, 0x4d16dd
jmp 0x409bdf
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a212
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409bc0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d16dd
je 0x40a212
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409bc2
mov eax, dword [edi + 0x100]
mov ebx, str.TLS_wrapper_function_for
mov esi, 0x4d16c7
jmp 0x409c9f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a318
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409c80
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d16c7
je 0x40a318
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409c82
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40aa66
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x5d
mov byte [edi + 0x104], 0x5d
jmp case.default.0x40b99e
mov ebx, dword [esp + 0x2c]
jmp 0x408360
mov eax, dword [esp + 0x2c]
lea ebx, [esp + 0x8f]
movsx eax, word [eax + 0x10]
mov dword [esp + 8], 0x4d121c
mov dword [esp + 4], 0x19
mov dword [esp + 0xc], eax
mov dword [esp], ebx
call dbg.__mingw_snprintf
test eax, eax
js 0x409d91
add eax, 1
cmp eax, 0x19
ja 0x40acef
mov dword [esp], ebx
call sym._strlen
test eax, eax
je 0x40a71c
mov edx, dword [edi + 0x100]
lea esi, [ebx + eax]
jmp 0x409ddf
mov ecx, edx
lea edx, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], edx
mov byte [edi + ecx], al
mov byte [edi + 0x104], al
cmp esi, ebx
je 0x40a71c
movzx eax, byte [ebx]
cmp edx, 0xff
jne 0x409dc0
mov edx, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], al
mov dword [esp + 8], edx
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx eax, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], al
mov byte [edi + 0x104], al
cmp ebx, esi
je 0x40a71c
movzx eax, byte [ebx]
mov ecx, 1
jmp 0x409dc2
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, str._in_
mov esi, 0x4d15fd
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
jmp 0x409e9f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409f2b
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409e80
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x409f2b
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409e82
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd42
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd4c
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd33
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, str._class
mov esi, 0x4d180e
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
jmp 0x409fdf
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x409fc0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x409fc2
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd47
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd1f
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd51
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x2c]
lea ebx, [esp + 0xf3]
mov eax, dword [eax + 0xc]
mov dword [esp + 8], 0x4d121c
mov dword [esp + 4], 0x19
add eax, 1
mov dword [esp], ebx
mov dword [esp + 0xc], eax
call dbg.__mingw_snprintf
test eax, eax
js 0x40a106
add eax, 1
cmp eax, 0x19
ja 0x40acef
mov dword [esp], ebx
call sym._strlen
mov edx, dword [edi + 0x100]
test eax, eax
je 0x40a1c0
lea esi, [ebx + eax]
jmp 0x40a15b
mov ecx, edx
lea edx, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], edx
mov byte [edi + ecx], al
mov byte [edi + 0x104], al
cmp esi, ebx
je 0x40a1c0
movzx eax, byte [ebx]
cmp edx, 0xff
jne 0x40a140
mov edx, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], al
mov dword [esp + 8], edx
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx eax, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], al
mov byte [edi + 0x104], al
cmp esi, ebx
je 0x40ae4f
movzx eax, byte [ebx]
mov ecx, 1
jmp 0x40a142
cmp edx, 0xff
je 0x40ac95
lea eax, [edx + 1]
mov dword [edi + 0x100], eax
mov byte [edi + edx], 0x7d
mov byte [edi + 0x104], 0x7d
jmp case.default.0x40b99e
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcd4
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ebx, str._for
mov esi, 0x4d16e3
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
mov eax, dword [edi + 0x100]
jmp 0x40a25b
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a2be
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x40a240
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d16e3
je 0x40a2be
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x40a242
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd87
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bdb4
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd01
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd15
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0xc]
jmp 0x409801
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bce3
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcb1
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0xc]
mov eax, dword [edi + 0x148]
test eax, eax
je 0x40a409
movd xmm0, dword [edi + 0x110]
movd xmm5, eax
lea eax, [esp + 0x38]
mov dword [edi + 0x110], eax
punpckldq xmm0, xmm5
movq qword [esp + 0x38], xmm0
mov edx, 0x11
mov eax, edi
call sym._d_print_comp
mov ecx, dword [edi + 0x148]
test ecx, ecx
je case.default.0x40b99e
mov eax, dword [esp + 0x38]
mov dword [edi + 0x110], eax
jmp case.default.0x40b99e
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd96
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bc9d
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [edi + 0x100]
lea edx, [eax + 1]
cmp eax, 0xff
je 0x40b130
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x3e
mov byte [edi + 0x104], 0x3e
jmp case.default.0x40b99e
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcc0
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bda0
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bca7
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd8c
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcb6
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd9b
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcbb
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov ecx, dword [esp + 0x24]
mov ebx, dword [ecx + 4]
movzx eax, byte [ebx]
sub eax, 0x61
cmp al, 0x19
jbe 0x40ae59
mov esi, dword [esp + 0x28]
lea eax, [esi - 1]
cmp byte [ebx + esi - 1], 0x20
cmove esi, eax
test esi, esi
je case.default.0x40b99e
mov eax, dword [edi + 0x100]
add esi, ebx
jmp 0x40a65f
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je case.default.0x40b99e
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x40a640
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, esi
je case.default.0x40b99e
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x40a642
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bda5
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd5b
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
mov eax, dword [esp + 0x2c]
movzx ebx, byte [eax + 0x12]
test bl, bl
je case.default.0x40b99e
jmp 0x408149
mov ecx, dword [esp + 0x2c]
mov edx, 0x11
mov eax, edi
call sym._d_print_mod
jmp 0x406ed3
mov esi, dword [eax + 0xc]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], ecx
mov dword [esp + 0x38], eax
lea eax, [esp + 0x38]
mov dword [edi + 0x114], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x28], esi
mov dword [esp + 0x3c], eax
test esi, esi
jne 0x406eb7
jmp 0x406f5e
mov esi, dword [esp + 0x2c]
mov edx, dword [edi + 0x110]
mov dword [esp + 0x3c], 0
mov ebx, dword [edi + 0x120]
mov esi, dword [esi + 0xc]
mov dword [esp + 0x38], edx
lea edx, [esp + 0x38]
mov dword [edi + 0x110], edx
mov edx, 1
mov dword [esp + 0x28], ebx
mov dword [edi + 0x120], 0
test esi, esi
je 0x40a7c9
cmp dword [esi], 0x59
je 0x40b737
mov dword [edi + 0x120], edx
cmp eax, 0xff
je 0x40b3b4
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov ecx, esi
mov edx, 0x11
mov ebx, 0x4d17d2
mov byte [edi + eax], 0x28
mov eax, edi
mov esi, 0x4d17d4
mov byte [edi + 0x104], 0x28
call sym._d_print_comp
mov eax, dword [esp + 0x28]
mov dword [edi + 0x120], eax
mov eax, dword [esp + 0x38]
mov dword [edi + 0x110], eax
mov eax, dword [edi + 0x100]
jmp 0x40a85b
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40a8be
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x40a840
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp ebx, 0x4d17d4
je 0x40a8be
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x40a842
mov eax, dword [esp + 0x2c]
lea ebx, [esp + 0xda]
mov eax, dword [eax + 0x10]
mov dword [esp + 8], 0x4d121c
mov dword [esp + 4], 0x19
add eax, 1
mov dword [esp], ebx
mov dword [esp + 0xc], eax
call dbg.__mingw_snprintf
test eax, eax
js 0x40a8fb
add eax, 1
cmp eax, 0x19
ja 0x40acef
mov dword [esp], ebx
call sym._strlen
mov edx, dword [edi + 0x100]
test eax, eax
je 0x40a1c0
lea esi, [ebx + eax]
jmp 0x40a95f
mov ecx, edx
lea edx, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], edx
mov byte [edi + ecx], al
mov byte [edi + 0x104], al
cmp ebx, esi
je 0x40a1c0
movzx eax, byte [ebx]
cmp edx, 0xff
jne 0x40a940
mov edx, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], al
mov dword [esp + 8], edx
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx eax, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], al
mov byte [edi + 0x104], al
cmp ebx, esi
je 0x40ae4f
movzx eax, byte [ebx]
mov ecx, 1
jmp 0x40a942
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x40815d
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b702
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov ecx, dword [ebx - 0xc]
mov edx, 0x11
mov byte [edi + eax], 0x20
mov eax, edi
mov byte [edi + 0x104], 0x20
call sym._d_print_mod
jmp 0x409548
mov eax, edi
mov edx, 0x11
call sym._d_print_subexpr
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcc5
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x4d177f
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_string
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x409d37
mov eax, dword [esp + 0x28]
jmp 0x406fc4
test eax, eax
je 0x40af98
mov eax, dword [edi + 0x100]
mov ebx, str.auto:
mov esi, 0x4d1592
jmp 0x40aadd
mov ecx, eax
lea eax, [ecx + 1]
add ebx, 1
mov dword [edi + 0x100], eax
mov byte [edi + ecx], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40afee
movzx edx, byte [ebx]
cmp eax, 0xff
jne 0x40aabe
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x28], dl
mov dword [esp + 8], eax
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx edx, byte [esp + 0x28]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], dl
mov byte [edi + 0x104], dl
cmp esi, ebx
je 0x40afee
movzx edx, byte [ebx]
mov ecx, 1
jmp 0x40aac0
mov edx, str.parm
mov eax, edi
call sym._d_append_string
mov dword [esp + 0xc], ebx
lea ebx, [esp + 0xc1]
mov dword [esp + 8], 0x4d121c
mov dword [esp + 4], 0x19
mov dword [esp], ebx
call dbg.__mingw_snprintf
test eax, eax
js 0x40ab7f
add eax, 1
cmp eax, 0x19
ja 0x40acef
mov dword [esp], ebx
call sym._strlen
mov ecx, dword [edi + 0x100]
mov esi, eax
test eax, eax
je 0x40acca
add esi, ebx
jmp 0x40abdf
mov edx, ecx
lea ecx, [edx + 1]
add ebx, 1
mov dword [edi + 0x100], ecx
mov byte [edi + edx], al
mov byte [edi + 0x104], al
cmp esi, ebx
je 0x40acca
movzx eax, byte [ebx]
cmp ecx, 0xff
jne 0x40abc0
mov edx, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
add ebx, 1
mov byte [esp + 0x2c], al
mov dword [esp + 8], edx
mov dword [esp + 4], 0xff
mov dword [esp], edi
call dword [edi + 0x108]
movzx eax, byte [esp + 0x2c]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 1
mov byte [edi], al
mov byte [edi + 0x104], al
cmp esi, ebx
je 0x40b8da
movzx eax, byte [ebx]
mov edx, 1
jmp 0x40abc2
xor ebx, ebx
jmp 0x4071ac
cmp esi, 0x56
jne 0x40729f
mov ebx, 0x3a
jmp 0x40727c
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x409821
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov eax, 1
xor edx, edx
jmp 0x40a1cf
cmp ecx, 0xff
je 0x40b823
lea eax, [ecx + 1]
mov dword [edi + 0x100], eax
mov byte [edi + ecx], 0x7d
mov byte [edi + 0x104], 0x7d
jmp case.default.0x40b99e
call dbg.__chk_fail
mov eax, dword [esi + 0xc]
mov ecx, dword [eax]
movzx eax, byte [ecx]
mov dword [esp + 0x2c], ecx
mov edx, eax
sub edx, 0x61
jne 0x40ad14
movzx edx, byte [ecx + 1]
sub edx, 0x64
jne 0x40ad14
movzx edx, byte [ecx + 2]
mov ecx, dword [ebx]
test edx, edx
jne 0x40ad23
cmp ecx, 3
je 0x40b92c
cmp ecx, 0x3a
je 0x40ba22
cmp eax, 0x73
jne 0x40ada0
mov edx, dword [esp + 0x2c]
cmp byte [edx + 1], 0x5a
jne 0x40b853
movzx ecx, byte [edx + 2]
test ecx, ecx
jne 0x40b853
mov edx, ebx
mov eax, edi
call sym._d_find_pack
test eax, eax
jne 0x40ad71
jmp 0x40ad76
mov edx, dword [eax + 0xc]
test edx, edx
je 0x40ad76
mov eax, dword [eax + 0x10]
add ecx, 1
test eax, eax
je 0x40ad76
cmp dword [eax], 0x30
je 0x40ad60
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcd9
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, ecx
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_num
mov ecx, esi
mov eax, edi
mov edx, 0x11
call sym._d_print_expr_op
mov esi, dword [esp + 0x2c]
movzx eax, byte [esi]
cmp eax, 0x67
jne 0x40adee
cmp byte [esi + 1], 0x73
jne 0x40adee
cmp byte [esi + 2], 0
jne 0x40adee
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcde
lea esp, [ebp - 0xc]
mov ecx, ebx
mov eax, edi
mov edx, 0x11
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
cmp eax, 0x73
jne 0x40aecc
mov esi, dword [esp + 0x2c]
cmp byte [esi + 1], 0x74
jne 0x40aecc
cmp byte [esi + 2], 0
jne 0x40aecc
mov edx, 0x28
mov eax, edi
call sym._d_append_char
mov eax, edi
mov ecx, ebx
mov edx, 0x11
call sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bced
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x29
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_char
mov edx, 1
jmp 0x40a1cc
mov edx, 0x20
mov eax, edi
mov dword [esp + 0x2c], ecx
call sym._d_append_char
mov ecx, dword [esp + 0x2c]
mov ebx, dword [ecx + 4]
jmp 0x40a606
movd xmm0, dword [edi + 0x114]
movd xmm6, eax
lea ecx, [esp + 0x38]
mov dword [esp + 0x2c], eax
mov edx, dword [edi + 0x110]
mov dword [edi + 0x114], ecx
punpckldq xmm0, xmm6
mov dword [esp + 0x40], 0
movq qword [esp + 0x38], xmm0
mov esi, dword [eax + 0xc]
mov dword [esp + 0x44], edx
mov dword [esp + 0x28], esi
jmp 0x406eb7
mov ecx, dword [esp + 0x2c]
mov edx, 0x11
mov eax, edi
call sym._d_print_mod
jmp 0x40710b
cmp eax, 0x6e
jne 0x408c1c
mov eax, dword [esp + 0x2c]
cmp byte [eax + 1], 0x78
jne 0x408c1c
cmp byte [eax + 2], 0
je 0x40ae0f
jmp 0x408c1c
mov edx, ecx
jmp 0x4094bf
mov eax, edi
mov edx, 0x28
call sym._d_append_char
mov ecx, dword [esi + 0xc]
mov eax, edi
mov edx, 0x11
call sym._d_print_comp
mov edx, 0x29
mov eax, edi
call sym._d_append_char
jmp 0x408c1c
cmp ebx, 7
jne 0x4071ac
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x10]
mov edx, dword [eax]
test edx, edx
jne 0x4071ac
cmp dword [eax + 0x10], 1
jne 0x4071ac
cmp esi, 0x3e
jne 0x4071ac
mov eax, dword [eax + 0xc]
movzx eax, byte [eax]
cmp al, 0x30
je 0x40bd65
cmp al, 0x31
jne 0x4071ac
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd60
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x4d1760
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_string
mov edx, dword [esp + 0x2c]
mov eax, edi
call sym._d_lookup_template_argument
test eax, eax
je case.0x406e1c.45
cmp dword [eax], 0x30
jne 0x40afc7
mov edx, dword [edi + 0x124]
test edx, edx
js 0x40afc7
call sym._d_index_template_argument.part.0
test eax, eax
je case.0x406e1c.45
mov ebx, dword [edi + 0x110]
mov ecx, eax
mov eax, edi
mov edx, dword [ebx]
mov dword [edi + 0x110], edx
mov edx, 0x11
call sym._d_print_comp
mov dword [edi + 0x110], ebx
jmp case.default.0x40b99e
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd29
mov eax, dword [esp + 0x2c]
mov edx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
add edx, 1
pop edi
pop ebp
jmp sym._d_append_num
test eax, eax
je case.0x406e1c.45
mov edx, dword [eax]
cmp edx, 0x5d
jne 0x40b035
mov eax, dword [eax + 0xc]
test eax, eax
je case.0x406e1c.45
mov edx, dword [eax]
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bdb9
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_lambda_parm_name
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bc98
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0xc]
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_comp
test edx, edx
jne 0x40834e
jmp case.default.0x40b99e
mov byte [edi + eax], 0
mov edx, dword [edi + 0x10c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov dword [edi + 0x100], 0
jmp 0x40705f
movd xmm0, dword [esp + 0x24]
mov dword [esp + 0x2c], eax
movd xmm6, eax
punpckldq xmm0, xmm6
mov dword [esp + 0x40], 0
lea edx, [esp + 0x38]
movq qword [esp + 0x38], xmm0
mov eax, dword [eax + 0xc]
mov dword [edi + 0x114], edx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x28], eax
jmp 0x406eb7
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x4097e9
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x40a4a0
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x40855c
mov edx, 0x20
mov eax, edi
call sym._d_append_char
jmp 0x408548
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x408517
mov edx, 0x20
mov eax, edi
call sym._d_append_char
jmp 0x408503
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x409396
mov edx, str.default_arg
mov eax, edi
call sym._d_append_string
mov eax, dword [ebx + 0x10]
lea edx, [eax + 1]
mov eax, edi
call sym._d_append_num
mov edx, 0x4d1589
mov eax, edi
call sym._d_append_string
mov ebx, dword [ebx + 0xc]
jmp 0x40714b
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x407f9d
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x40735a
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x407327
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x409629
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x3c], 0
mov esi, dword [eax + 0xc]
mov eax, dword [edi + 0x120]
mov dword [edi + 0x120], 0
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x110]
mov dword [esp + 0x38], eax
lea eax, [esp + 0x38]
mov dword [edi + 0x110], eax
test esi, esi
je 0x40b36b
cmp dword [esi], 0x59
je 0x40b737
mov dword [edi + 0x120], 1
mov eax, 1
jmp 0x40a7da
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x4087dd
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x40a7dd
mov edx, 0x5b
mov eax, edi
call sym._d_append_char
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd24
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x5d
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_char
mov edx, 0x2d
mov eax, edi
call sym._d_append_char
jmp 0x40720f
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x4071f1
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
mov eax, dword [esp + 0x2c]
mov edx, 1
add dword [edi + 0x128], 1
mov ecx, dword [eax + 0xc]
xor eax, eax
jmp 0x4071c0
mov ebx, dword [ebx + 0x10]
cmp dword [ebx], 0x49
je 0x40b91c
mov eax, dword [esp + 0x28]
shl eax, 4
lea ecx, [esi + eax]
mov eax, dword [ebx]
cmp eax, 0x4f
je 0x40b4e6
ja 0x40b4de
lea edx, [eax - 0x1c]
cmp edx, 5
jbe 0x40b4e6
mov edx, eax
jmp 0x409509
lea edx, [eax - 0x52]
cmp edx, 1
ja 0x40b4d7
cmp dword [esp + 0x28], 4
je case.0x406e1c.45
movdqu xmm0, xmmword [ecx - 0x10]
lea eax, [ecx - 0x10]
mov dword [ecx - 0xc], ebx
movd xmm6, eax
mov dword [ecx - 8], 0
movups xmmword [ecx], xmm0
movd xmm0, dword [esp + 0x24]
mov dword [edi + 0x114], ecx
add ecx, 0x10
punpckldq xmm0, xmm6
add dword [esp + 0x28], 1
movq qword [ecx - 0x14], xmm0
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x40b4c6
jmp case.0x406e1c.45
movd xmm0, dword [esp + 0x24]
movd xmm7, ebx
lea eax, [esp + 0x38]
mov dword [edi + 0x110], eax
punpckldq xmm0, xmm7
movq qword [esp + 0x38], xmm0
mov eax, dword [ebx + 0x10]
cmp dword [eax], 0x5e
jne 0x409512
mov edx, dword [eax + 0xc]
mov ecx, dword [esp + 0x2c]
mov dword [ebx + 0x10], edx
mov edx, dword [ecx + 0x10]
mov dword [eax + 0xc], edx
mov dword [ecx + 0x10], eax
jmp 0x409512
mov edx, dword [edi + 0x134]
test edx, edx
jle 0x40bbbd
mov ebx, dword [edi + 0x130]
mov ecx, dword [esp + 0x28]
xor eax, eax
jmp 0x40b5ae
add eax, 1
add ebx, 8
cmp edx, eax
je 0x40bbbd
cmp ecx, dword [ebx]
jne 0x40b5a0
mov ecx, dword [edi + 0x12c]
mov eax, ecx
test ecx, ecx
je 0x40b8ec
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x28]
jmp 0x40b5eb
cmp ecx, eax
je 0x40b5e0
cmp edx, esi
je 0x40b5f1
mov eax, dword [eax + 4]
test eax, eax
je 0x40b8e4
mov edx, dword [eax]
cmp edx, ebx
jne 0x40b5d8
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov eax, edi
xor ebx, ebx
call sym._d_lookup_template_argument
test eax, eax
je case.0x406e1c.45
cmp dword [eax], 0x30
jne 0x406fc4
mov edx, dword [edi + 0x124]
test edx, edx
js 0x40bc48
call sym._d_index_template_argument.part.0
test eax, eax
jne 0x406fc4
test ebx, ebx
je case.0x406e1c.45
mov eax, dword [esp + 0x20]
mov dword [edi + 0x110], eax
jmp case.0x406e1c.45
movzx eax, byte [eax]
lea edx, [eax - 0x72]
cmp dl, 1
jbe 0x40b65b
sub eax, 0x63
cmp al, 1
ja 0x408ad2
mov edx, 0x11
mov eax, edi
call sym._d_print_expr_op
mov edx, 0x3c
mov eax, edi
call sym._d_append_char
mov esi, dword [esp + 0x2c]
mov edx, 0x11
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0xc]
mov eax, edi
call sym._d_print_comp
mov edx, 0x4d173b
mov eax, edi
call sym._d_append_string
mov eax, dword [esi + 0x10]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bcca
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x29
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_char
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x407290
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x40aa0f
mov dword [esp + 0x3c], esi
mov edx, 0x3c
mov eax, edi
call sym._d_append_char
mov ebx, dword [esi + 0xc]
test ebx, ebx
jne 0x40b7aa
jmp 0x40b800
mov eax, edi
mov ecx, ebx
mov edx, 0x11
call sym._d_print_comp
mov eax, dword [edi + 0x100]
cmp eax, 0xff
je 0x40b7cb
lea edx, [eax + 1]
mov dword [edi + 0x100], edx
mov byte [edi + eax], 0x20
mov byte [edi + 0x104], 0x20
mov edx, dword [ebx]
cmp edx, 0x5d
jne 0x40b793
mov ebx, dword [ebx + 0xc]
mov edx, dword [ebx]
mov eax, dword [edi + 0x120]
lea ecx, [eax - 1]
mov eax, edi
call sym._d_print_lambda_parm_name
mov ebx, dword [ebx + 0x10]
test ebx, ebx
je 0x40b800
mov eax, dword [edi + 0x120]
lea edx, [eax + 1]
mov dword [edi + 0x120], edx
test eax, eax
je 0x40b758
mov edx, 0x4d1575
mov eax, edi
call sym._d_append_string
jmp 0x40b758
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
mov edx, 1
xor eax, eax
jmp 0x40b776
mov edx, 0x3e
mov eax, edi
call sym._d_append_char
mov eax, dword [edi + 0x120]
mov esi, dword [esi + 0x10]
lea edx, [eax + 1]
mov eax, dword [edi + 0x100]
jmp 0x40a7c9
mov eax, dword [edi + 0x10c]
mov byte [edi + 0xff], 0
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov dword [esp], edi
call dword [edi + 0x108]
add dword [edi + 0x128], 1
xor ecx, ecx
jmp 0x40acd6
cmp eax, 0x73
jne 0x40ada0
mov eax, dword [esp + 0x2c]
cmp byte [eax + 1], 0x50
jne 0x40ada0
xor ecx, ecx
cmp byte [eax + 2], 0
je 0x40b88e
jmp 0x40ada0
add ecx, 1
mov ebx, dword [ebx + 0x10]
test ebx, ebx
je 0x40b94b
cmp dword [ebx], 0x30
jne 0x40b94b
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x40b94b
cmp dword [eax], 0x4d
jne 0x40b880
mov edx, dword [eax + 0xc]
mov eax, edi
call sym._d_find_pack
xor edx, edx
test eax, eax
jne 0x40b8d1
jmp 0x40b8d6
mov esi, dword [eax + 0xc]
test esi, esi
je 0x40b8d6
mov eax, dword [eax + 0x10]
add edx, 1
test eax, eax
je 0x40b8d6
cmp dword [eax], 0x30
je 0x40b8c0
add ecx, edx
jmp 0x40b883
mov ecx, 1
jmp 0x40acd6
mov esi, dword [esp + 0x24]
mov ebx, dword [esp + 0x1c]
mov eax, dword [edi + 0x110]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 4]
mov dword [edi + 0x110], eax
mov eax, edi
call sym._d_lookup_template_argument
test eax, eax
je 0x40b636
mov ebx, 1
jmp 0x40b60a
mov ebx, dword [ebx + 0xc]
test ebx, ebx
jne 0x40b4bc
jmp case.0x406e1c.45
mov edx, dword [ebx + 0xc]
cmp dword [edx], 1
jne 0x40ad2c
mov ecx, dword [ebx + 0x10]
cmp dword [ecx], 0x2a
jne 0x40ad2c
mov ebx, edx
jmp 0x40ad2c
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bdc8
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, ecx
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_num
cmp esi, 0x3f
je 0x40bc6e
mov ecx, eax
mov edx, 0x11
mov eax, edi
sub ebx, 2
call sym._d_print_comp
cmp ebx, 4
ja case.default.0x40b99e
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jmp dword [ebx*4 + 0x4d199c]
jne 0x40bdaa
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x4d1753
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_string
jne 0x40bdaf
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x4d1750
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_string
jne 0x40bdbe
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x6c
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_char
jne 0x40bdc3
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x75
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_char
jne 0x40bcf7
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x4d1756
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_string
mov ecx, dword [ebx + 0xc]
mov eax, edi
mov edx, 0x11
call sym._d_print_subexpr
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bccf
lea esp, [ebp - 0xc]
mov ecx, esi
mov eax, edi
mov edx, 0x11
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_expr_op
mov eax, edi
mov edx, 0x5b
call sym._d_append_char
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov eax, dword [eax + 0x10]
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
mov edx, 0x5d
mov eax, edi
call sym._d_append_char
jmp 0x408b9b
lea eax, [esp + 0x38]
xor esi, esi
mov dword [edi + 0x114], eax
xor eax, eax
mov dword [esp + 0x38], esi
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0x110]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x44], eax
mov eax, dword [esi + 0xc]
mov dword [esp + 0x28], eax
jmp 0x406eb7
call dbg.__stack_chk_fail
mov eax, dword [eax + 0xc]
cmp dword [eax + 8], 1
jne 0x408b0e
mov eax, dword [eax + 4]
cmp byte [eax], 0x3e
jne 0x408b0e
mov edx, 0x28
mov eax, edi
call sym._d_append_char
jmp 0x408b0e
mov eax, dword [esp + 0x2c]
mov edx, 0x11
mov ecx, dword [eax + 0x10]
mov eax, edi
call sym._d_print_comp
xor eax, eax
cmp dword [esp + 0x50], 0
mov dword [edi + 0x114], eax
je 0x40992c
jmp case.default.0x40b99e
mov eax, dword [ecx + 0x10]
cmp dword [eax], 0x2a
je 0x40bb2c
mov dword [edi + 0x118], 1
mov ecx, dword [ecx + 0xc]
mov edx, 0x11
mov eax, edi
call sym._d_print_subexpr
jmp 0x408b49
mov edx, str.new
mov eax, edi
mov dword [esp + 0x28], ecx
call sym._d_append_string
mov ecx, dword [esp + 0x28]
cmp dword [ecx + 0xc], 0
je 0x40bb72
mov edx, 0x11
mov eax, edi
call sym._d_print_subexpr
mov edx, 0x20
mov eax, edi
call sym._d_append_char
mov ecx, dword [esp + 0x2c]
mov edx, 0x11
mov eax, edi
call sym._d_print_comp
test esi, esi
je case.default.0x40b99e
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd0b
lea esp, [ebp - 0xc]
mov ecx, esi
mov eax, edi
mov edx, 0x11
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_print_subexpr
mov dword [edi + 0x114], eax
jmp case.0x406e1c.45
cmp edx, dword [edi + 0x138]
jge case.0x406e1c.45
mov eax, dword [edi + 0x130]
mov ebx, dword [esp + 0x28]
lea eax, [eax + edx*8]
add edx, 1
mov dword [edi + 0x134], edx
mov dword [eax], ebx
lea ebx, [eax + 4]
mov eax, dword [edi + 0x110]
test eax, eax
je 0x40bc8a
mov edx, dword [edi + 0x144]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x24], edx
mov edx, dword [edi + 0x140]
jmp 0x40bc2a
mov ecx, dword [edi + 0x13c]
mov esi, dword [eax + 4]
lea ecx, [ecx + edx*8]
add edx, 1
mov dword [edi + 0x140], edx
mov dword [ecx + 4], esi
mov dword [ebx], ecx
mov eax, dword [eax]
mov ebx, ecx
test eax, eax
je 0x40bc86
cmp dword [esp + 0x24], edx
jg 0x40bc08
jmp case.0x406e1c.45
mov ecx, ebx
mov edx, 0x11
mov eax, edi
call sym._d_print_expr_op
jmp 0x408b85
movd xmm0, dword [edi + 0x114]
mov ecx, dword [edi + 0x110]
cmp esi, 0x30
je 0x40bdcd
movd xmm6, dword [esp + 0x2c]
punpckldq xmm0, xmm6
jmp 0x407000
mov eax, edi
mov edx, 0x2d
call sym._d_append_char
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x10]
jmp 0x40b977
mov esi, dword [esp + 0x1c]
xor eax, eax
mov dword [ebx], eax
jmp 0x40b5f5
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
mov eax, dword [esp + 0x10c]
sub eax, dword [0x51a10c]
jne 0x40bd91
lea esp, [ebp - 0xc]
mov eax, edi
mov edx, 0x4d175a
pop ebx
pop esi
pop edi
pop ebp
jmp sym._d_append_string
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
call dbg.__stack_chk_fail
movd xmm7, eax
mov dword [esp + 0x2c], eax
punpckldq xmm0, xmm7
jmp 0x40b0d3