Function at 0x411a30
Capabilities:
Hash data using fnv
Rebuild import table
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push esi
and esp, 0xfffffff8
mov eax, 0x4dc0
call fcn.0046c3b4
mov eax, dword [ebp + 8]
mov eax, dword [ebp + 8]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0040f620
mov dword [esp + 0x2bdc], eax
lea ecx, [esp + 0x2bcb]
lea eax, [esp + 0x2bca]
mov dword [esp], eax
call fcn.00434070
sub esp, 4
lea eax, [esp + 0x2bdb]
mov dword [esp + 0x2be8], eax
lea eax, [esp + 0x2bcb]
mov dword [esp + 0x2be4], eax
lea eax, [esp + 0x31b4]
mov dword [esp + 0x31bc], eax
mov eax, dword [esp + 0x31bc]
mov dword [esp + 0x3218], 0x30
mov ecx, dword [esp + 0x3218]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3214], ecx
mov ecx, dword [esp + 0x3214]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x31b4]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x31a8]
mov dword [esp + 0x31cc], ecx
mov dword [esp + 0x31c8], eax
mov eax, dword [esp + 0x31cc]
mov ecx, dword [esp + 0x31c8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x31c8]
mov dword [esp + 0x321c], ecx
mov ecx, dword [esp + 0x321c]
mov edx, dword [esp + 0x321c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x31c0], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x31c4], ecx
mov ecx, dword [esp + 0x31c8]
add ecx, dword [esp + 0x31c0]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x31c4]
mov dword [eax + 8], ecx
lea eax, [esp + 0x31a8]
mov dword [esp + 0x31d0], eax
mov ecx, dword [esp + 0x31d0]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x411d06
lea eax, [esp + 0x31a8]
mov dword [esp + 0x31d4], eax
mov eax, dword [esp + 0x31d4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x31a4], eax
mov eax, dword [esp + 0x31a4]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x31a4], ecx
cmp eax, 0
je 0x411d04
mov eax, dword [esp + 0x31a4]
lea ecx, [esp + 0x31a8]
mov dword [esp + 0x31ec], ecx
mov dword [esp + 0x31e8], eax
mov eax, dword [esp + 0x31ec]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x31e8]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x31f4], 0x413f201
mov dword [esp + 0x31f0], 0xb28ca51
mov eax, dword [esp + 0x31f4]
mov dword [esp + 0x31e4], ecx
mov dword [esp + 0x31e0], eax
mov eax, dword [esp + 0x31e0]
mov dword [esp + 0x31dc], eax
mov eax, dword [esp + 0x31e4]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x31e4], ecx
mov al, byte [eax]
mov byte [esp + 0x31db], al
cmp byte [esp + 0x31db], 0
je 0x411cd7
mov ecx, dword [esp + 0x31dc]
mov al, byte [esp + 0x31db]
mov dword [esp + 0x3224], ecx
mov byte [esp + 0x3223], al
mov eax, dword [esp + 0x3224]
mov dword [esp + 0x28ac], eax
movsx eax, byte [esp + 0x3223]
cmp eax, 0x41
jl 0x411ca6
movsx eax, byte [esp + 0x3223]
cmp eax, 0x5a
jg 0x411ca6
movsx eax, byte [esp + 0x3223]
or eax, 0x20
mov dword [esp + 0x28a8], eax
jmp 0x411cb5
movsx eax, byte [esp + 0x3223]
mov dword [esp + 0x28a8], eax
mov eax, dword [esp + 0x28ac]
mov ecx, dword [esp + 0x28a8]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x31dc], eax
jmp 0x411c24
mov eax, dword [esp + 0x31dc]
mov dword [esp + 0x31fc], 0x413f201
mov dword [esp + 0x31f8], 0xb28ca51
mov ecx, dword [esp + 0x31f8]
cmp eax, ecx
je 0x411d34
jmp 0x411b94
jmp 0x411d06
lea eax, [esp + 0x31b4]
mov dword [esp + 0x3210], eax
mov eax, dword [esp + 0x3210]
mov ecx, dword [eax]
mov dword [esp + 0x3228], ecx
mov ecx, dword [esp + 0x3228]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x411ad3
mov eax, dword [esp + 0x31a4]
lea ecx, [esp + 0x31a8]
mov dword [esp + 0x320c], ecx
mov dword [esp + 0x3208], eax
mov eax, dword [esp + 0x320c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3204], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3200], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3204]
mov edx, dword [esp + 0x3200]
mov esi, dword [esp + 0x3208]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x31b8], eax
mov eax, dword [esp + 0x31b8]
mov dword [esp + 0x28a0], eax
mov eax, dword [esp + 0x2be4]
mov dword [esp + 0x2f34], eax
mov eax, dword [esp + 0x2f34]
mov dword [esp + 0x2f38], eax
mov eax, dword [esp + 0x2f38]
mov dword [esp + 0x28a4], eax
mov dword [esp + 0x302c], eax
mov eax, dword [esp + 0x302c]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x411e64
mov eax, dword [esp + 0x28a4]
mov dword [esp + 0x31a0], eax
mov dword [esp + 0x319c], eax
mov eax, dword [esp + 0x31a0]
mov dword [esp + 0x289c], eax
mov dword [esp + 0x3198], 0
cmp dword [esp + 0x3198], 0x10
jge 0x411e62
mov eax, dword [esp + 0x289c]
mov ecx, dword [esp + 0x319c]
mov edx, dword [esp + 0x3198]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3198]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3198]
add eax, 1
mov dword [esp + 0x3198], eax
jmp 0x411e17
jmp 0x411e64
mov eax, dword [esp + 0x28a0]
mov ecx, dword [esp + 0x28a4]
mov dword [esp], ecx
call eax
sub esp, 4
cmp dword [esp + 0x2bdc], 0
jne 0x411ea8
mov dword [esp + 0x2bc4], 0
cmp dword [esp + 0x2bc4], 0x40
jae 0x411ea6
mov byte [esp + 0x2be3], 0
jmp 0x434056
jmp 0x411ea8
lea ecx, [esp + 0x2bb3]
lea eax, [esp + 0x2bb2]
mov dword [esp], eax
call fcn.004340d0
sub esp, 4
lea eax, [esp + 0x2bc3]
mov dword [esp + 0x2bf0], eax
lea eax, [esp + 0x2bb3]
mov dword [esp + 0x2bec], eax
lea eax, [esp + 0x323c]
mov dword [esp + 0x3244], eax
mov eax, dword [esp + 0x3244]
mov dword [esp + 0x32a0], 0x30
mov ecx, dword [esp + 0x32a0]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x329c], ecx
mov ecx, dword [esp + 0x329c]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x323c]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3230]
mov dword [esp + 0x3254], ecx
mov dword [esp + 0x3250], eax
mov eax, dword [esp + 0x3254]
mov ecx, dword [esp + 0x3250]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3250]
mov dword [esp + 0x32a4], ecx
mov ecx, dword [esp + 0x32a4]
mov edx, dword [esp + 0x32a4]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3248], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x324c], ecx
mov ecx, dword [esp + 0x3250]
add ecx, dword [esp + 0x3248]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x324c]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3230]
mov dword [esp + 0x3258], eax
mov ecx, dword [esp + 0x3258]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x412150
lea eax, [esp + 0x3230]
mov dword [esp + 0x325c], eax
mov eax, dword [esp + 0x325c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x322c], eax
mov eax, dword [esp + 0x322c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x322c], ecx
cmp eax, 0
je 0x41214e
mov eax, dword [esp + 0x322c]
lea ecx, [esp + 0x3230]
mov dword [esp + 0x3274], ecx
mov dword [esp + 0x3270], eax
mov eax, dword [esp + 0x3274]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3270]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x327c], 0x49b02545
mov dword [esp + 0x3278], 0x7741fe65
mov eax, dword [esp + 0x327c]
mov dword [esp + 0x326c], ecx
mov dword [esp + 0x3268], eax
mov eax, dword [esp + 0x3268]
mov dword [esp + 0x3264], eax
mov eax, dword [esp + 0x326c]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x326c], ecx
mov al, byte [eax]
mov byte [esp + 0x3263], al
cmp byte [esp + 0x3263], 0
je 0x412121
mov ecx, dword [esp + 0x3264]
mov al, byte [esp + 0x3263]
mov dword [esp + 0x32ac], ecx
mov byte [esp + 0x32ab], al
mov eax, dword [esp + 0x32ac]
mov dword [esp + 0x2898], eax
movsx eax, byte [esp + 0x32ab]
cmp eax, 0x41
jl 0x4120f0
movsx eax, byte [esp + 0x32ab]
cmp eax, 0x5a
jg 0x4120f0
movsx eax, byte [esp + 0x32ab]
or eax, 0x20
mov dword [esp + 0x2894], eax
jmp 0x4120ff
movsx eax, byte [esp + 0x32ab]
mov dword [esp + 0x2894], eax
mov eax, dword [esp + 0x2898]
mov ecx, dword [esp + 0x2894]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3264], eax
jmp 0x41206e
mov eax, dword [esp + 0x3264]
mov dword [esp + 0x3284], 0x49b02545
mov dword [esp + 0x3280], 0x7741fe65
mov ecx, dword [esp + 0x3280]
cmp eax, ecx
je 0x41217e
jmp 0x411fde
jmp 0x412150
lea eax, [esp + 0x323c]
mov dword [esp + 0x3298], eax
mov eax, dword [esp + 0x3298]
mov ecx, dword [eax]
mov dword [esp + 0x32b0], ecx
mov ecx, dword [esp + 0x32b0]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x411f1d
mov eax, dword [esp + 0x322c]
lea ecx, [esp + 0x3230]
mov dword [esp + 0x3294], ecx
mov dword [esp + 0x3290], eax
mov eax, dword [esp + 0x3294]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x328c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3288], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x328c]
mov edx, dword [esp + 0x3288]
mov esi, dword [esp + 0x3290]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3240], eax
mov eax, dword [esp + 0x3240]
mov dword [esp + 0x288c], eax
mov eax, dword [esp + 0x2bec]
mov dword [esp + 0x2f30], eax
mov eax, dword [esp + 0x2f30]
mov dword [esp + 0x2f3c], eax
mov eax, dword [esp + 0x2f3c]
mov dword [esp + 0x2890], eax
mov dword [esp + 0x3028], eax
mov eax, dword [esp + 0x3028]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x4122ae
mov eax, dword [esp + 0x2890]
mov dword [esp + 0x3194], eax
mov dword [esp + 0x3190], eax
mov eax, dword [esp + 0x3194]
mov dword [esp + 0x2888], eax
mov dword [esp + 0x318c], 0
cmp dword [esp + 0x318c], 0x10
jge 0x4122ac
mov eax, dword [esp + 0x2888]
mov ecx, dword [esp + 0x3190]
mov edx, dword [esp + 0x318c]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x318c]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x318c]
add eax, 1
mov dword [esp + 0x318c], eax
jmp 0x412261
jmp 0x4122ae
mov eax, dword [esp + 0x288c]
mov ecx, dword [esp + 0x2890]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2bdc]
mov eax, dword [eax + 4]
mov dword [esp + 0x2bac], eax
lea ecx, [esp + 0x2b9b]
lea eax, [esp + 0x2b9a]
mov dword [esp], eax
call fcn.00434130
sub esp, 4
lea eax, [esp + 0x2bab]
mov dword [esp + 0x2bf8], eax
lea eax, [esp + 0x2b9b]
mov dword [esp + 0x2bf4], eax
lea eax, [esp + 0x32c4]
mov dword [esp + 0x32cc], eax
mov eax, dword [esp + 0x32cc]
mov dword [esp + 0x3328], 0x30
mov ecx, dword [esp + 0x3328]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3324], ecx
mov ecx, dword [esp + 0x3324]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x32c4]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x32b8]
mov dword [esp + 0x32dc], ecx
mov dword [esp + 0x32d8], eax
mov eax, dword [esp + 0x32dc]
mov ecx, dword [esp + 0x32d8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x32d8]
mov dword [esp + 0x332c], ecx
mov ecx, dword [esp + 0x332c]
mov edx, dword [esp + 0x332c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x32d0], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x32d4], ecx
mov ecx, dword [esp + 0x32d8]
add ecx, dword [esp + 0x32d0]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x32d4]
mov dword [eax + 8], ecx
lea eax, [esp + 0x32b8]
mov dword [esp + 0x32e0], eax
mov ecx, dword [esp + 0x32e0]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x41257d
lea eax, [esp + 0x32b8]
mov dword [esp + 0x32e4], eax
mov eax, dword [esp + 0x32e4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x32b4], eax
mov eax, dword [esp + 0x32b4]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x32b4], ecx
cmp eax, 0
je 0x41257b
mov eax, dword [esp + 0x32b4]
lea ecx, [esp + 0x32b8]
mov dword [esp + 0x32fc], ecx
mov dword [esp + 0x32f8], eax
mov eax, dword [esp + 0x32fc]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x32f8]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3304], 0x4bb1bef6
mov dword [esp + 0x3300], 0xf64efaa
mov eax, dword [esp + 0x3304]
mov dword [esp + 0x32f4], ecx
mov dword [esp + 0x32f0], eax
mov eax, dword [esp + 0x32f0]
mov dword [esp + 0x32ec], eax
mov eax, dword [esp + 0x32f4]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x32f4], ecx
mov al, byte [eax]
mov byte [esp + 0x32eb], al
cmp byte [esp + 0x32eb], 0
je 0x41254e
mov ecx, dword [esp + 0x32ec]
mov al, byte [esp + 0x32eb]
mov dword [esp + 0x3334], ecx
mov byte [esp + 0x3333], al
mov eax, dword [esp + 0x3334]
mov dword [esp + 0x2884], eax
movsx eax, byte [esp + 0x3333]
cmp eax, 0x41
jl 0x41251d
movsx eax, byte [esp + 0x3333]
cmp eax, 0x5a
jg 0x41251d
movsx eax, byte [esp + 0x3333]
or eax, 0x20
mov dword [esp + 0x2880], eax
jmp 0x41252c
movsx eax, byte [esp + 0x3333]
mov dword [esp + 0x2880], eax
mov eax, dword [esp + 0x2884]
mov ecx, dword [esp + 0x2880]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x32ec], eax
jmp 0x41249b
mov eax, dword [esp + 0x32ec]
mov dword [esp + 0x330c], 0x4bb1bef6
mov dword [esp + 0x3308], 0xf64efaa
mov ecx, dword [esp + 0x3308]
cmp eax, ecx
je 0x4125ab
jmp 0x41240b
jmp 0x41257d
lea eax, [esp + 0x32c4]
mov dword [esp + 0x3320], eax
mov eax, dword [esp + 0x3320]
mov ecx, dword [eax]
mov dword [esp + 0x3338], ecx
mov ecx, dword [esp + 0x3338]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x41234a
mov eax, dword [esp + 0x32b4]
lea ecx, [esp + 0x32b8]
mov dword [esp + 0x331c], ecx
mov dword [esp + 0x3318], eax
mov eax, dword [esp + 0x331c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3314], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3310], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3314]
mov edx, dword [esp + 0x3310]
mov esi, dword [esp + 0x3318]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x32c8], eax
mov eax, dword [esp + 0x32c8]
mov dword [esp + 0x2878], eax
mov eax, dword [esp + 0x2bf4]
mov dword [esp + 0x2f2c], eax
mov eax, dword [esp + 0x2f2c]
mov dword [esp + 0x2f40], eax
mov eax, dword [esp + 0x2f40]
mov dword [esp + 0x287c], eax
mov dword [esp + 0x3024], eax
mov eax, dword [esp + 0x3024]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x4126db
mov eax, dword [esp + 0x287c]
mov dword [esp + 0x3188], eax
mov dword [esp + 0x3184], eax
mov eax, dword [esp + 0x3188]
mov dword [esp + 0x2874], eax
mov dword [esp + 0x3180], 0
cmp dword [esp + 0x3180], 0x10
jge 0x4126d9
mov eax, dword [esp + 0x2874]
mov ecx, dword [esp + 0x3184]
mov edx, dword [esp + 0x3180]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3180]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3180]
add eax, 1
mov dword [esp + 0x3180], eax
jmp 0x41268e
jmp 0x4126db
mov eax, dword [esp + 0x2878]
mov ecx, dword [esp + 0x287c]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2bdc]
mov eax, dword [eax]
mov dword [esp + 0x2b94], eax
lea ecx, [esp + 0x2b83]
lea eax, [esp + 0x2b82]
mov dword [esp], eax
call fcn.00434190
sub esp, 4
lea eax, [esp + 0x2b93]
mov dword [esp + 0x2c00], eax
lea eax, [esp + 0x2b83]
mov dword [esp + 0x2bfc], eax
lea eax, [esp + 0x334c]
mov dword [esp + 0x3354], eax
mov eax, dword [esp + 0x3354]
mov dword [esp + 0x33b0], 0x30
mov ecx, dword [esp + 0x33b0]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x33ac], ecx
mov ecx, dword [esp + 0x33ac]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x334c]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3340]
mov dword [esp + 0x3364], ecx
mov dword [esp + 0x3360], eax
mov eax, dword [esp + 0x3364]
mov ecx, dword [esp + 0x3360]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3360]
mov dword [esp + 0x33b4], ecx
mov ecx, dword [esp + 0x33b4]
mov edx, dword [esp + 0x33b4]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3358], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x335c], ecx
mov ecx, dword [esp + 0x3360]
add ecx, dword [esp + 0x3358]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x335c]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3340]
mov dword [esp + 0x3368], eax
mov ecx, dword [esp + 0x3368]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x4129a9
lea eax, [esp + 0x3340]
mov dword [esp + 0x336c], eax
mov eax, dword [esp + 0x336c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x333c], eax
mov eax, dword [esp + 0x333c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x333c], ecx
cmp eax, 0
je 0x4129a7
mov eax, dword [esp + 0x333c]
lea ecx, [esp + 0x3340]
mov dword [esp + 0x3384], ecx
mov dword [esp + 0x3380], eax
mov eax, dword [esp + 0x3384]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3380]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x338c], 0x3d42ac23
mov dword [esp + 0x3388], 0x6d6ad93f
mov eax, dword [esp + 0x338c]
mov dword [esp + 0x337c], ecx
mov dword [esp + 0x3378], eax
mov eax, dword [esp + 0x3378]
mov dword [esp + 0x3374], eax
mov eax, dword [esp + 0x337c]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x337c], ecx
mov al, byte [eax]
mov byte [esp + 0x3373], al
cmp byte [esp + 0x3373], 0
je 0x41297a
mov ecx, dword [esp + 0x3374]
mov al, byte [esp + 0x3373]
mov dword [esp + 0x33bc], ecx
mov byte [esp + 0x33bb], al
mov eax, dword [esp + 0x33bc]
mov dword [esp + 0x2870], eax
movsx eax, byte [esp + 0x33bb]
cmp eax, 0x41
jl 0x412949
movsx eax, byte [esp + 0x33bb]
cmp eax, 0x5a
jg 0x412949
movsx eax, byte [esp + 0x33bb]
or eax, 0x20
mov dword [esp + 0x286c], eax
jmp 0x412958
movsx eax, byte [esp + 0x33bb]
mov dword [esp + 0x286c], eax
mov eax, dword [esp + 0x2870]
mov ecx, dword [esp + 0x286c]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3374], eax
jmp 0x4128c7
mov eax, dword [esp + 0x3374]
mov dword [esp + 0x3394], 0x3d42ac23
mov dword [esp + 0x3390], 0x6d6ad93f
mov ecx, dword [esp + 0x3390]
cmp eax, ecx
je 0x4129d7
jmp 0x412837
jmp 0x4129a9
lea eax, [esp + 0x334c]
mov dword [esp + 0x33a8], eax
mov eax, dword [esp + 0x33a8]
mov ecx, dword [eax]
mov dword [esp + 0x33c0], ecx
mov ecx, dword [esp + 0x33c0]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x412776
mov eax, dword [esp + 0x333c]
lea ecx, [esp + 0x3340]
mov dword [esp + 0x33a4], ecx
mov dword [esp + 0x33a0], eax
mov eax, dword [esp + 0x33a4]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x339c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3398], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x339c]
mov edx, dword [esp + 0x3398]
mov esi, dword [esp + 0x33a0]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3350], eax
mov eax, dword [esp + 0x3350]
mov dword [esp + 0x2864], eax
mov eax, dword [esp + 0x2bfc]
mov dword [esp + 0x2f28], eax
mov eax, dword [esp + 0x2f28]
mov dword [esp + 0x2f44], eax
mov eax, dword [esp + 0x2f44]
mov dword [esp + 0x2868], eax
mov dword [esp + 0x3020], eax
mov eax, dword [esp + 0x3020]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x412b07
mov eax, dword [esp + 0x2868]
mov dword [esp + 0x317c], eax
mov dword [esp + 0x3178], eax
mov eax, dword [esp + 0x317c]
mov dword [esp + 0x2860], eax
mov dword [esp + 0x3174], 0
cmp dword [esp + 0x3174], 0x10
jge 0x412b05
mov eax, dword [esp + 0x2860]
mov ecx, dword [esp + 0x3178]
mov edx, dword [esp + 0x3174]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3174]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3174]
add eax, 1
mov dword [esp + 0x3174], eax
jmp 0x412aba
jmp 0x412b07
mov eax, dword [esp + 0x2864]
mov ecx, dword [esp + 0x2868]
mov dword [esp], ecx
call eax
sub esp, 4
mov dword [esp + 0x2b7c], 0
mov dword [esp + 0x2b78], 0
mov eax, dword [esp + 0x2b78]
cmp eax, dword [esp + 0x2bac]
jae 0x434035
lea ecx, [esp + 0x2b67]
lea eax, [esp + 0x2b66]
mov dword [esp], eax
call fcn.004341f0
sub esp, 4
lea eax, [esp + 0x2b77]
mov dword [esp + 0x2c08], eax
lea eax, [esp + 0x2b67]
mov dword [esp + 0x2c04], eax
lea eax, [esp + 0x33d4]
mov dword [esp + 0x33dc], eax
mov eax, dword [esp + 0x33dc]
mov dword [esp + 0x3438], 0x30
mov ecx, dword [esp + 0x3438]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3434], ecx
mov ecx, dword [esp + 0x3434]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x33d4]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x33c8]
mov dword [esp + 0x33ec], ecx
mov dword [esp + 0x33e8], eax
mov eax, dword [esp + 0x33ec]
mov ecx, dword [esp + 0x33e8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x33e8]
mov dword [esp + 0x343c], ecx
mov ecx, dword [esp + 0x343c]
mov edx, dword [esp + 0x343c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x33e0], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x33e4], ecx
mov ecx, dword [esp + 0x33e8]
add ecx, dword [esp + 0x33e0]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x33e4]
mov dword [eax + 8], ecx
lea eax, [esp + 0x33c8]
mov dword [esp + 0x33f0], eax
mov ecx, dword [esp + 0x33f0]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x412def
lea eax, [esp + 0x33c8]
mov dword [esp + 0x33f4], eax
mov eax, dword [esp + 0x33f4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x33c4], eax
mov eax, dword [esp + 0x33c4]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x33c4], ecx
cmp eax, 0
je 0x412ded
mov eax, dword [esp + 0x33c4]
lea ecx, [esp + 0x33c8]
mov dword [esp + 0x340c], ecx
mov dword [esp + 0x3408], eax
mov eax, dword [esp + 0x340c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3408]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3414], 0xfe689d5a
mov dword [esp + 0x3410], 0x71ccac4e
mov eax, dword [esp + 0x3414]
mov dword [esp + 0x3404], ecx
mov dword [esp + 0x3400], eax
mov eax, dword [esp + 0x3400]
mov dword [esp + 0x33fc], eax
mov eax, dword [esp + 0x3404]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3404], ecx
mov al, byte [eax]
mov byte [esp + 0x33fb], al
cmp byte [esp + 0x33fb], 0
je 0x412dc0
mov ecx, dword [esp + 0x33fc]
mov al, byte [esp + 0x33fb]
mov dword [esp + 0x3444], ecx
mov byte [esp + 0x3443], al
mov eax, dword [esp + 0x3444]
mov dword [esp + 0x285c], eax
movsx eax, byte [esp + 0x3443]
cmp eax, 0x41
jl 0x412d8f
movsx eax, byte [esp + 0x3443]
cmp eax, 0x5a
jg 0x412d8f
movsx eax, byte [esp + 0x3443]
or eax, 0x20
mov dword [esp + 0x2858], eax
jmp 0x412d9e
movsx eax, byte [esp + 0x3443]
mov dword [esp + 0x2858], eax
mov eax, dword [esp + 0x285c]
mov ecx, dword [esp + 0x2858]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x33fc], eax
jmp 0x412d0d
mov eax, dword [esp + 0x33fc]
mov dword [esp + 0x341c], 0xfe689d5a
mov dword [esp + 0x3418], 0x71ccac4e
mov ecx, dword [esp + 0x3418]
cmp eax, ecx
je 0x412e1d
jmp 0x412c7d
jmp 0x412def
lea eax, [esp + 0x33d4]
mov dword [esp + 0x3430], eax
mov eax, dword [esp + 0x3430]
mov ecx, dword [eax]
mov dword [esp + 0x3448], ecx
mov ecx, dword [esp + 0x3448]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x412bbc
mov eax, dword [esp + 0x33c4]
lea ecx, [esp + 0x33c8]
mov dword [esp + 0x342c], ecx
mov dword [esp + 0x3428], eax
mov eax, dword [esp + 0x342c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3424], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3420], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3424]
mov edx, dword [esp + 0x3420]
mov esi, dword [esp + 0x3428]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x33d8], eax
mov eax, dword [esp + 0x33d8]
mov dword [esp + 0x2850], eax
mov eax, dword [esp + 0x2c04]
mov dword [esp + 0x2f24], eax
mov eax, dword [esp + 0x2f24]
mov dword [esp + 0x2f48], eax
mov eax, dword [esp + 0x2f48]
mov dword [esp + 0x2854], eax
mov dword [esp + 0x301c], eax
mov eax, dword [esp + 0x301c]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x412f4d
mov eax, dword [esp + 0x2854]
mov dword [esp + 0x3170], eax
mov dword [esp + 0x316c], eax
mov eax, dword [esp + 0x3170]
mov dword [esp + 0x284c], eax
mov dword [esp + 0x3168], 0
cmp dword [esp + 0x3168], 0x10
jge 0x412f4b
mov eax, dword [esp + 0x284c]
mov ecx, dword [esp + 0x316c]
mov edx, dword [esp + 0x3168]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3168]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3168]
add eax, 1
mov dword [esp + 0x3168], eax
jmp 0x412f00
jmp 0x412f4d
mov eax, dword [esp + 0x2850]
mov ecx, dword [esp + 0x2854]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2b94]
add eax, dword [esp + 0x2b78]
mov ecx, dword [ebp + 8]
add eax, ecx
mov dword [esp + 0x2b7c], eax
lea ecx, [esp + 0x2b55]
lea eax, [esp + 0x2b54]
mov dword [esp], eax
call fcn.00434250
sub esp, 4
lea eax, [esp + 0x2b65]
mov dword [esp + 0x2c10], eax
lea eax, [esp + 0x2b55]
mov dword [esp + 0x2c0c], eax
lea eax, [esp + 0x345c]
mov dword [esp + 0x3464], eax
mov eax, dword [esp + 0x3464]
mov dword [esp + 0x34c0], 0x30
mov ecx, dword [esp + 0x34c0]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x34bc], ecx
mov ecx, dword [esp + 0x34bc]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x345c]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3450]
mov dword [esp + 0x3474], ecx
mov dword [esp + 0x3470], eax
mov eax, dword [esp + 0x3474]
mov ecx, dword [esp + 0x3470]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3470]
mov dword [esp + 0x34c4], ecx
mov ecx, dword [esp + 0x34c4]
mov edx, dword [esp + 0x34c4]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3468], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x346c], ecx
mov ecx, dword [esp + 0x3470]
add ecx, dword [esp + 0x3468]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x346c]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3450]
mov dword [esp + 0x3478], eax
mov ecx, dword [esp + 0x3478]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x413225
lea eax, [esp + 0x3450]
mov dword [esp + 0x347c], eax
mov eax, dword [esp + 0x347c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x344c], eax
mov eax, dword [esp + 0x344c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x344c], ecx
cmp eax, 0
je 0x413223
mov eax, dword [esp + 0x344c]
lea ecx, [esp + 0x3450]
mov dword [esp + 0x3494], ecx
mov dword [esp + 0x3490], eax
mov eax, dword [esp + 0x3494]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3490]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x349c], 0x30a8bd81
mov dword [esp + 0x3498], 0xcff821d1
mov eax, dword [esp + 0x349c]
mov dword [esp + 0x348c], ecx
mov dword [esp + 0x3488], eax
mov eax, dword [esp + 0x3488]
mov dword [esp + 0x3484], eax
mov eax, dword [esp + 0x348c]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x348c], ecx
mov al, byte [eax]
mov byte [esp + 0x3483], al
cmp byte [esp + 0x3483], 0
je 0x4131f6
mov ecx, dword [esp + 0x3484]
mov al, byte [esp + 0x3483]
mov dword [esp + 0x34cc], ecx
mov byte [esp + 0x34cb], al
mov eax, dword [esp + 0x34cc]
mov dword [esp + 0x2848], eax
movsx eax, byte [esp + 0x34cb]
cmp eax, 0x41
jl 0x4131c5
movsx eax, byte [esp + 0x34cb]
cmp eax, 0x5a
jg 0x4131c5
movsx eax, byte [esp + 0x34cb]
or eax, 0x20
mov dword [esp + 0x2844], eax
jmp 0x4131d4
movsx eax, byte [esp + 0x34cb]
mov dword [esp + 0x2844], eax
mov eax, dword [esp + 0x2848]
mov ecx, dword [esp + 0x2844]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3484], eax
jmp 0x413143
mov eax, dword [esp + 0x3484]
mov dword [esp + 0x34a4], 0x30a8bd81
mov dword [esp + 0x34a0], 0xcff821d1
mov ecx, dword [esp + 0x34a0]
cmp eax, ecx
je 0x413253
jmp 0x4130b3
jmp 0x413225
lea eax, [esp + 0x345c]
mov dword [esp + 0x34b8], eax
mov eax, dword [esp + 0x34b8]
mov ecx, dword [eax]
mov dword [esp + 0x34d0], ecx
mov ecx, dword [esp + 0x34d0]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x412ff2
mov eax, dword [esp + 0x344c]
lea ecx, [esp + 0x3450]
mov dword [esp + 0x34b4], ecx
mov dword [esp + 0x34b0], eax
mov eax, dword [esp + 0x34b4]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x34ac], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x34a8], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x34ac]
mov edx, dword [esp + 0x34a8]
mov esi, dword [esp + 0x34b0]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3460], eax
mov eax, dword [esp + 0x3460]
mov dword [esp + 0x283c], eax
mov eax, dword [esp + 0x2c0c]
mov dword [esp + 0x2f20], eax
mov eax, dword [esp + 0x2f20]
mov dword [esp + 0x2f4c], eax
mov eax, dword [esp + 0x2f4c]
mov dword [esp + 0x2840], eax
mov dword [esp + 0x3018], eax
mov eax, dword [esp + 0x3018]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x413383
mov eax, dword [esp + 0x2840]
mov dword [esp + 0x3164], eax
mov dword [esp + 0x3160], eax
mov eax, dword [esp + 0x3164]
mov dword [esp + 0x2838], eax
mov dword [esp + 0x315c], 0
cmp dword [esp + 0x315c], 0x10
jge 0x413381
mov eax, dword [esp + 0x2838]
mov ecx, dword [esp + 0x3160]
mov edx, dword [esp + 0x315c]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x315c]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x315c]
add eax, 1
mov dword [esp + 0x315c], eax
jmp 0x413336
jmp 0x413383
mov eax, dword [esp + 0x283c]
mov ecx, dword [esp + 0x2840]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2b7c]
cmp dword [eax], 0
jne 0x4133b7
mov eax, dword [esp + 0x2b7c]
cmp dword [eax + 0x10], 0
jne 0x4133b7
jmp 0x434035
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x2b7c]
mov ecx, dword [ecx + 0xc]
add eax, ecx
mov dword [esp + 0x2b50], eax
lea ecx, [esp + 0x2b3f]
lea eax, [esp + 0x2b3e]
mov dword [esp], eax
call fcn.004342b0
sub esp, 4
lea eax, [esp + 0x2b4f]
mov dword [esp + 0x2c18], eax
lea eax, [esp + 0x2b3f]
mov dword [esp + 0x2c14], eax
lea eax, [esp + 0x34e4]
mov dword [esp + 0x34ec], eax
mov eax, dword [esp + 0x34ec]
mov dword [esp + 0x3548], 0x30
mov ecx, dword [esp + 0x3548]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3544], ecx
mov ecx, dword [esp + 0x3544]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x34e4]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x34d8]
mov dword [esp + 0x34fc], ecx
mov dword [esp + 0x34f8], eax
mov eax, dword [esp + 0x34fc]
mov ecx, dword [esp + 0x34f8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x34f8]
mov dword [esp + 0x354c], ecx
mov ecx, dword [esp + 0x354c]
mov edx, dword [esp + 0x354c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x34f0], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x34f4], ecx
mov ecx, dword [esp + 0x34f8]
add ecx, dword [esp + 0x34f0]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34f4]
mov dword [eax + 8], ecx
lea eax, [esp + 0x34d8]
mov dword [esp + 0x3500], eax
mov ecx, dword [esp + 0x3500]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x413675
lea eax, [esp + 0x34d8]
mov dword [esp + 0x3504], eax
mov eax, dword [esp + 0x3504]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x34d4], eax
mov eax, dword [esp + 0x34d4]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x34d4], ecx
cmp eax, 0
je 0x413673
mov eax, dword [esp + 0x34d4]
lea ecx, [esp + 0x34d8]
mov dword [esp + 0x351c], ecx
mov dword [esp + 0x3518], eax
mov eax, dword [esp + 0x351c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3518]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3524], 0xacb1bb9f
mov dword [esp + 0x3520], 0x3e74f50b
mov eax, dword [esp + 0x3524]
mov dword [esp + 0x3514], ecx
mov dword [esp + 0x3510], eax
mov eax, dword [esp + 0x3510]
mov dword [esp + 0x350c], eax
mov eax, dword [esp + 0x3514]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3514], ecx
mov al, byte [eax]
mov byte [esp + 0x350b], al
cmp byte [esp + 0x350b], 0
je 0x413646
mov ecx, dword [esp + 0x350c]
mov al, byte [esp + 0x350b]
mov dword [esp + 0x3554], ecx
mov byte [esp + 0x3553], al
mov eax, dword [esp + 0x3554]
mov dword [esp + 0x2834], eax
movsx eax, byte [esp + 0x3553]
cmp eax, 0x41
jl 0x413615
movsx eax, byte [esp + 0x3553]
cmp eax, 0x5a
jg 0x413615
movsx eax, byte [esp + 0x3553]
or eax, 0x20
mov dword [esp + 0x2830], eax
jmp 0x413624
movsx eax, byte [esp + 0x3553]
mov dword [esp + 0x2830], eax
mov eax, dword [esp + 0x2834]
mov ecx, dword [esp + 0x2830]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x350c], eax
jmp 0x413593
mov eax, dword [esp + 0x350c]
mov dword [esp + 0x352c], 0xacb1bb9f
mov dword [esp + 0x3528], 0x3e74f50b
mov ecx, dword [esp + 0x3528]
cmp eax, ecx
je 0x4136a3
jmp 0x413503
jmp 0x413675
lea eax, [esp + 0x34e4]
mov dword [esp + 0x3540], eax
mov eax, dword [esp + 0x3540]
mov ecx, dword [eax]
mov dword [esp + 0x3558], ecx
mov ecx, dword [esp + 0x3558]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x413442
mov eax, dword [esp + 0x34d4]
lea ecx, [esp + 0x34d8]
mov dword [esp + 0x353c], ecx
mov dword [esp + 0x3538], eax
mov eax, dword [esp + 0x353c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3534], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3530], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3534]
mov edx, dword [esp + 0x3530]
mov esi, dword [esp + 0x3538]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x34e8], eax
mov eax, dword [esp + 0x34e8]
mov dword [esp + 0x2828], eax
mov eax, dword [esp + 0x2c14]
mov dword [esp + 0x2f1c], eax
mov eax, dword [esp + 0x2f1c]
mov dword [esp + 0x2f50], eax
mov eax, dword [esp + 0x2f50]
mov dword [esp + 0x282c], eax
mov dword [esp + 0x3014], eax
mov eax, dword [esp + 0x3014]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x4137d3
mov eax, dword [esp + 0x282c]
mov dword [esp + 0x3158], eax
mov dword [esp + 0x3154], eax
mov eax, dword [esp + 0x3158]
mov dword [esp + 0x2824], eax
mov dword [esp + 0x3150], 0
cmp dword [esp + 0x3150], 0x10
jge 0x4137d1
mov eax, dword [esp + 0x2824]
mov ecx, dword [esp + 0x3154]
mov edx, dword [esp + 0x3150]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3150]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3150]
add eax, 1
mov dword [esp + 0x3150], eax
jmp 0x413786
jmp 0x4137d3
mov eax, dword [esp + 0x2828]
mov ecx, dword [esp + 0x282c]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2b7c]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x2b38], eax
lea ecx, [esp + 0x2b27]
lea eax, [esp + 0x2b26]
mov dword [esp], eax
call fcn.00434310
sub esp, 4
lea eax, [esp + 0x2b37]
mov dword [esp + 0x2c20], eax
lea eax, [esp + 0x2b27]
mov dword [esp + 0x2c1c], eax
lea eax, [esp + 0x356c]
mov dword [esp + 0x3574], eax
mov eax, dword [esp + 0x3574]
mov dword [esp + 0x35d0], 0x30
mov ecx, dword [esp + 0x35d0]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x35cc], ecx
mov ecx, dword [esp + 0x35cc]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x356c]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3560]
mov dword [esp + 0x3584], ecx
mov dword [esp + 0x3580], eax
mov eax, dword [esp + 0x3584]
mov ecx, dword [esp + 0x3580]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3580]
mov dword [esp + 0x35d4], ecx
mov ecx, dword [esp + 0x35d4]
mov edx, dword [esp + 0x35d4]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3578], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x357c], ecx
mov ecx, dword [esp + 0x3580]
add ecx, dword [esp + 0x3578]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x357c]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3560]
mov dword [esp + 0x3588], eax
mov ecx, dword [esp + 0x3588]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x413aa2
lea eax, [esp + 0x3560]
mov dword [esp + 0x358c], eax
mov eax, dword [esp + 0x358c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x355c], eax
mov eax, dword [esp + 0x355c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x355c], ecx
cmp eax, 0
je 0x413aa0
mov eax, dword [esp + 0x355c]
lea ecx, [esp + 0x3560]
mov dword [esp + 0x35a4], ecx
mov dword [esp + 0x35a0], eax
mov eax, dword [esp + 0x35a4]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x35a0]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x35ac], 0x738f72cf
mov dword [esp + 0x35a8], 0x6e7ed71b
mov eax, dword [esp + 0x35ac]
mov dword [esp + 0x359c], ecx
mov dword [esp + 0x3598], eax
mov eax, dword [esp + 0x3598]
mov dword [esp + 0x3594], eax
mov eax, dword [esp + 0x359c]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x359c], ecx
mov al, byte [eax]
mov byte [esp + 0x3593], al
cmp byte [esp + 0x3593], 0
je 0x413a73
mov ecx, dword [esp + 0x3594]
mov al, byte [esp + 0x3593]
mov dword [esp + 0x35dc], ecx
mov byte [esp + 0x35db], al
mov eax, dword [esp + 0x35dc]
mov dword [esp + 0x2820], eax
movsx eax, byte [esp + 0x35db]
cmp eax, 0x41
jl 0x413a42
movsx eax, byte [esp + 0x35db]
cmp eax, 0x5a
jg 0x413a42
movsx eax, byte [esp + 0x35db]
or eax, 0x20
mov dword [esp + 0x281c], eax
jmp 0x413a51
movsx eax, byte [esp + 0x35db]
mov dword [esp + 0x281c], eax
mov eax, dword [esp + 0x2820]
mov ecx, dword [esp + 0x281c]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3594], eax
jmp 0x4139c0
mov eax, dword [esp + 0x3594]
mov dword [esp + 0x35b4], 0x738f72cf
mov dword [esp + 0x35b0], 0x6e7ed71b
mov ecx, dword [esp + 0x35b0]
cmp eax, ecx
je 0x413ad0
jmp 0x413930
jmp 0x413aa2
lea eax, [esp + 0x356c]
mov dword [esp + 0x35c8], eax
mov eax, dword [esp + 0x35c8]
mov ecx, dword [eax]
mov dword [esp + 0x35e0], ecx
mov ecx, dword [esp + 0x35e0]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x41386f
mov eax, dword [esp + 0x355c]
lea ecx, [esp + 0x3560]
mov dword [esp + 0x35c4], ecx
mov dword [esp + 0x35c0], eax
mov eax, dword [esp + 0x35c4]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x35bc], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x35b8], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x35bc]
mov edx, dword [esp + 0x35b8]
mov esi, dword [esp + 0x35c0]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3570], eax
mov eax, dword [esp + 0x3570]
mov dword [esp + 0x2814], eax
mov eax, dword [esp + 0x2c1c]
mov dword [esp + 0x2f18], eax
mov eax, dword [esp + 0x2f18]
mov dword [esp + 0x2f54], eax
mov eax, dword [esp + 0x2f54]
mov dword [esp + 0x2818], eax
mov dword [esp + 0x3010], eax
mov eax, dword [esp + 0x3010]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x413c00
mov eax, dword [esp + 0x2818]
mov dword [esp + 0x314c], eax
mov dword [esp + 0x3148], eax
mov eax, dword [esp + 0x314c]
mov dword [esp + 0x2810], eax
mov dword [esp + 0x3144], 0
cmp dword [esp + 0x3144], 0x10
jge 0x413bfe
mov eax, dword [esp + 0x2810]
mov ecx, dword [esp + 0x3148]
mov edx, dword [esp + 0x3144]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3144]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3144]
add eax, 1
mov dword [esp + 0x3144], eax
jmp 0x413bb3
jmp 0x413c00
mov eax, dword [esp + 0x2814]
mov ecx, dword [esp + 0x2818]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2b7c]
mov eax, dword [eax]
mov dword [esp + 0x2b20], eax
lea ecx, [esp + 0x2b0f]
lea eax, [esp + 0x2b0e]
mov dword [esp], eax
call fcn.00434370
sub esp, 4
lea eax, [esp + 0x2b1f]
mov dword [esp + 0x2c28], eax
lea eax, [esp + 0x2b0f]
mov dword [esp + 0x2c24], eax
lea eax, [esp + 0x35f4]
mov dword [esp + 0x35fc], eax
mov eax, dword [esp + 0x35fc]
mov dword [esp + 0x3658], 0x30
mov ecx, dword [esp + 0x3658]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3654], ecx
mov ecx, dword [esp + 0x3654]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x35f4]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x35e8]
mov dword [esp + 0x360c], ecx
mov dword [esp + 0x3608], eax
mov eax, dword [esp + 0x360c]
mov ecx, dword [esp + 0x3608]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3608]
mov dword [esp + 0x365c], ecx
mov ecx, dword [esp + 0x365c]
mov edx, dword [esp + 0x365c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3600], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3604], ecx
mov ecx, dword [esp + 0x3608]
add ecx, dword [esp + 0x3600]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3604]
mov dword [eax + 8], ecx
lea eax, [esp + 0x35e8]
mov dword [esp + 0x3610], eax
mov ecx, dword [esp + 0x3610]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x413ece
lea eax, [esp + 0x35e8]
mov dword [esp + 0x3614], eax
mov eax, dword [esp + 0x3614]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x35e4], eax
mov eax, dword [esp + 0x35e4]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x35e4], ecx
cmp eax, 0
je 0x413ecc
mov eax, dword [esp + 0x35e4]
lea ecx, [esp + 0x35e8]
mov dword [esp + 0x362c], ecx
mov dword [esp + 0x3628], eax
mov eax, dword [esp + 0x362c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3628]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3634], 0x5f85c918
mov dword [esp + 0x3630], 0xf10c0610
mov eax, dword [esp + 0x3634]
mov dword [esp + 0x3624], ecx
mov dword [esp + 0x3620], eax
mov eax, dword [esp + 0x3620]
mov dword [esp + 0x361c], eax
mov eax, dword [esp + 0x3624]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3624], ecx
mov al, byte [eax]
mov byte [esp + 0x361b], al
cmp byte [esp + 0x361b], 0
je 0x413e9f
mov ecx, dword [esp + 0x361c]
mov al, byte [esp + 0x361b]
mov dword [esp + 0x3664], ecx
mov byte [esp + 0x3663], al
mov eax, dword [esp + 0x3664]
mov dword [esp + 0x280c], eax
movsx eax, byte [esp + 0x3663]
cmp eax, 0x41
jl 0x413e6e
movsx eax, byte [esp + 0x3663]
cmp eax, 0x5a
jg 0x413e6e
movsx eax, byte [esp + 0x3663]
or eax, 0x20
mov dword [esp + 0x2808], eax
jmp 0x413e7d
movsx eax, byte [esp + 0x3663]
mov dword [esp + 0x2808], eax
mov eax, dword [esp + 0x280c]
mov ecx, dword [esp + 0x2808]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x361c], eax
jmp 0x413dec
mov eax, dword [esp + 0x361c]
mov dword [esp + 0x363c], 0x5f85c918
mov dword [esp + 0x3638], 0xf10c0610
mov ecx, dword [esp + 0x3638]
cmp eax, ecx
je 0x413efc
jmp 0x413d5c
jmp 0x413ece
lea eax, [esp + 0x35f4]
mov dword [esp + 0x3650], eax
mov eax, dword [esp + 0x3650]
mov ecx, dword [eax]
mov dword [esp + 0x3668], ecx
mov ecx, dword [esp + 0x3668]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x413c9b
mov eax, dword [esp + 0x35e4]
lea ecx, [esp + 0x35e8]
mov dword [esp + 0x364c], ecx
mov dword [esp + 0x3648], eax
mov eax, dword [esp + 0x364c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3644], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3640], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3644]
mov edx, dword [esp + 0x3640]
mov esi, dword [esp + 0x3648]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x35f8], eax
mov eax, dword [esp + 0x35f8]
mov dword [esp + 0x2800], eax
mov eax, dword [esp + 0x2c24]
mov dword [esp + 0x2f14], eax
mov eax, dword [esp + 0x2f14]
mov dword [esp + 0x2f58], eax
mov eax, dword [esp + 0x2f58]
mov dword [esp + 0x2804], eax
mov dword [esp + 0x300c], eax
mov eax, dword [esp + 0x300c]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x41402c
mov eax, dword [esp + 0x2804]
mov dword [esp + 0x3140], eax
mov dword [esp + 0x313c], eax
mov eax, dword [esp + 0x3140]
mov dword [esp + 0x27fc], eax
mov dword [esp + 0x3138], 0
cmp dword [esp + 0x3138], 0x10
jge 0x41402a
mov eax, dword [esp + 0x27fc]
mov ecx, dword [esp + 0x313c]
mov edx, dword [esp + 0x3138]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3138]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3138]
add eax, 1
mov dword [esp + 0x3138], eax
jmp 0x413fdf
jmp 0x41402c
mov eax, dword [esp + 0x2800]
mov ecx, dword [esp + 0x2804]
mov dword [esp], ecx
call eax
sub esp, 4
cmp dword [esp + 0x2b20], 0
jne 0x41405d
mov eax, dword [esp + 0x2b7c]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x2b20], eax
lea ecx, [esp + 0x2afd]
lea eax, [esp + 0x2afc]
mov dword [esp], eax
call fcn.004343d0
sub esp, 4
lea eax, [esp + 0x2b0d]
mov dword [esp + 0x2c30], eax
lea eax, [esp + 0x2afd]
mov dword [esp + 0x2c2c], eax
lea eax, [esp + 0x367c]
mov dword [esp + 0x3684], eax
mov eax, dword [esp + 0x3684]
mov dword [esp + 0x36e0], 0x30
mov ecx, dword [esp + 0x36e0]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x36dc], ecx
mov ecx, dword [esp + 0x36dc]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x367c]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3670]
mov dword [esp + 0x3694], ecx
mov dword [esp + 0x3690], eax
mov eax, dword [esp + 0x3694]
mov ecx, dword [esp + 0x3690]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3690]
mov dword [esp + 0x36e4], ecx
mov ecx, dword [esp + 0x36e4]
mov edx, dword [esp + 0x36e4]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3688], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x368c], ecx
mov ecx, dword [esp + 0x3690]
add ecx, dword [esp + 0x3688]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x368c]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3670]
mov dword [esp + 0x3698], eax
mov ecx, dword [esp + 0x3698]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x414305
lea eax, [esp + 0x3670]
mov dword [esp + 0x369c], eax
mov eax, dword [esp + 0x369c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x366c], eax
mov eax, dword [esp + 0x366c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x366c], ecx
cmp eax, 0
je 0x414303
mov eax, dword [esp + 0x366c]
lea ecx, [esp + 0x3670]
mov dword [esp + 0x36b4], ecx
mov dword [esp + 0x36b0], eax
mov eax, dword [esp + 0x36b4]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x36b0]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x36bc], 0xf3fc6aa2
mov dword [esp + 0x36b8], 0x75679d86
mov eax, dword [esp + 0x36bc]
mov dword [esp + 0x36ac], ecx
mov dword [esp + 0x36a8], eax
mov eax, dword [esp + 0x36a8]
mov dword [esp + 0x36a4], eax
mov eax, dword [esp + 0x36ac]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x36ac], ecx
mov al, byte [eax]
mov byte [esp + 0x36a3], al
cmp byte [esp + 0x36a3], 0
je 0x4142d6
mov ecx, dword [esp + 0x36a4]
mov al, byte [esp + 0x36a3]
mov dword [esp + 0x36ec], ecx
mov byte [esp + 0x36eb], al
mov eax, dword [esp + 0x36ec]
mov dword [esp + 0x27f8], eax
movsx eax, byte [esp + 0x36eb]
cmp eax, 0x41
jl 0x4142a5
movsx eax, byte [esp + 0x36eb]
cmp eax, 0x5a
jg 0x4142a5
movsx eax, byte [esp + 0x36eb]
or eax, 0x20
mov dword [esp + 0x27f4], eax
jmp 0x4142b4
movsx eax, byte [esp + 0x36eb]
mov dword [esp + 0x27f4], eax
mov eax, dword [esp + 0x27f8]
mov ecx, dword [esp + 0x27f4]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x36a4], eax
jmp 0x414223
mov eax, dword [esp + 0x36a4]
mov dword [esp + 0x36c4], 0xf3fc6aa2
mov dword [esp + 0x36c0], 0x75679d86
mov ecx, dword [esp + 0x36c0]
cmp eax, ecx
je 0x414333
jmp 0x414193
jmp 0x414305
lea eax, [esp + 0x367c]
mov dword [esp + 0x36d8], eax
mov eax, dword [esp + 0x36d8]
mov ecx, dword [eax]
mov dword [esp + 0x36f0], ecx
mov ecx, dword [esp + 0x36f0]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4140d2
mov eax, dword [esp + 0x366c]
lea ecx, [esp + 0x3670]
mov dword [esp + 0x36d4], ecx
mov dword [esp + 0x36d0], eax
mov eax, dword [esp + 0x36d4]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x36cc], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x36c8], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x36cc]
mov edx, dword [esp + 0x36c8]
mov esi, dword [esp + 0x36d0]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3680], eax
mov eax, dword [esp + 0x3680]
mov dword [esp + 0x27ec], eax
mov eax, dword [esp + 0x2c2c]
mov dword [esp + 0x2f10], eax
mov eax, dword [esp + 0x2f10]
mov dword [esp + 0x2f5c], eax
mov eax, dword [esp + 0x2f5c]
mov dword [esp + 0x27f0], eax
mov dword [esp + 0x3008], eax
mov eax, dword [esp + 0x3008]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x414463
mov eax, dword [esp + 0x27f0]
mov dword [esp + 0x3134], eax
mov dword [esp + 0x3130], eax
mov eax, dword [esp + 0x3134]
mov dword [esp + 0x27e8], eax
mov dword [esp + 0x312c], 0
cmp dword [esp + 0x312c], 0x10
jge 0x414461
mov eax, dword [esp + 0x27e8]
mov ecx, dword [esp + 0x3130]
mov edx, dword [esp + 0x312c]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x312c]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x312c]
add eax, 1
mov dword [esp + 0x312c], eax
jmp 0x414416
jmp 0x414463
mov eax, dword [esp + 0x27ec]
mov ecx, dword [esp + 0x27f0]
mov dword [esp], ecx
call eax
sub esp, 4
mov dword [esp + 0x2af8], 0
lea ecx, [esp + 0x2ae7]
lea eax, [esp + 0x2ae6]
mov dword [esp], eax
call fcn.00434430
sub esp, 4
lea eax, [esp + 0x2af7]
mov dword [esp + 0x2c38], eax
lea eax, [esp + 0x2ae7]
mov dword [esp + 0x2c34], eax
lea eax, [esp + 0x3704]
mov dword [esp + 0x370c], eax
mov eax, dword [esp + 0x370c]
mov dword [esp + 0x3768], 0x30
mov ecx, dword [esp + 0x3768]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3764], ecx
mov ecx, dword [esp + 0x3764]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3704]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x36f8]
mov dword [esp + 0x371c], ecx
mov dword [esp + 0x3718], eax
mov eax, dword [esp + 0x371c]
mov ecx, dword [esp + 0x3718]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3718]
mov dword [esp + 0x376c], ecx
mov ecx, dword [esp + 0x376c]
mov edx, dword [esp + 0x376c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3710], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3714], ecx
mov ecx, dword [esp + 0x3718]
add ecx, dword [esp + 0x3710]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3714]
mov dword [eax + 8], ecx
lea eax, [esp + 0x36f8]
mov dword [esp + 0x3720], eax
mov ecx, dword [esp + 0x3720]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x41472c
lea eax, [esp + 0x36f8]
mov dword [esp + 0x3724], eax
mov eax, dword [esp + 0x3724]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x36f4], eax
mov eax, dword [esp + 0x36f4]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x36f4], ecx
cmp eax, 0
je 0x41472a
mov eax, dword [esp + 0x36f4]
lea ecx, [esp + 0x36f8]
mov dword [esp + 0x373c], ecx
mov dword [esp + 0x3738], eax
mov eax, dword [esp + 0x373c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3738]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3744], 0x7ec8753e
mov dword [esp + 0x3740], 0x88a897c2
mov eax, dword [esp + 0x3744]
mov dword [esp + 0x3734], ecx
mov dword [esp + 0x3730], eax
mov eax, dword [esp + 0x3730]
mov dword [esp + 0x372c], eax
mov eax, dword [esp + 0x3734]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3734], ecx
mov al, byte [eax]
mov byte [esp + 0x372b], al
cmp byte [esp + 0x372b], 0
je 0x4146fd
mov ecx, dword [esp + 0x372c]
mov al, byte [esp + 0x372b]
mov dword [esp + 0x3774], ecx
mov byte [esp + 0x3773], al
mov eax, dword [esp + 0x3774]
mov dword [esp + 0x27e4], eax
movsx eax, byte [esp + 0x3773]
cmp eax, 0x41
jl 0x4146cc
movsx eax, byte [esp + 0x3773]
cmp eax, 0x5a
jg 0x4146cc
movsx eax, byte [esp + 0x3773]
or eax, 0x20
mov dword [esp + 0x27e0], eax
jmp 0x4146db
movsx eax, byte [esp + 0x3773]
mov dword [esp + 0x27e0], eax
mov eax, dword [esp + 0x27e4]
mov ecx, dword [esp + 0x27e0]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x372c], eax
jmp 0x41464a
mov eax, dword [esp + 0x372c]
mov dword [esp + 0x374c], 0x7ec8753e
mov dword [esp + 0x3748], 0x88a897c2
mov ecx, dword [esp + 0x3748]
cmp eax, ecx
je 0x41475a
jmp 0x4145ba
jmp 0x41472c
lea eax, [esp + 0x3704]
mov dword [esp + 0x3760], eax
mov eax, dword [esp + 0x3760]
mov ecx, dword [eax]
mov dword [esp + 0x3778], ecx
mov ecx, dword [esp + 0x3778]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4144f9
mov eax, dword [esp + 0x36f4]
lea ecx, [esp + 0x36f8]
mov dword [esp + 0x375c], ecx
mov dword [esp + 0x3758], eax
mov eax, dword [esp + 0x375c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3754], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3750], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3754]
mov edx, dword [esp + 0x3750]
mov esi, dword [esp + 0x3758]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3708], eax
mov eax, dword [esp + 0x3708]
mov dword [esp + 0x27d8], eax
mov eax, dword [esp + 0x2c34]
mov dword [esp + 0x2f0c], eax
mov eax, dword [esp + 0x2f0c]
mov dword [esp + 0x2f60], eax
mov eax, dword [esp + 0x2f60]
mov dword [esp + 0x27dc], eax
mov dword [esp + 0x3004], eax
mov eax, dword [esp + 0x3004]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x41488a
mov eax, dword [esp + 0x27dc]
mov dword [esp + 0x3128], eax
mov dword [esp + 0x3124], eax
mov eax, dword [esp + 0x3128]
mov dword [esp + 0x27d4], eax
mov dword [esp + 0x3120], 0
cmp dword [esp + 0x3120], 0x10
jge 0x414888
mov eax, dword [esp + 0x27d4]
mov ecx, dword [esp + 0x3124]
mov edx, dword [esp + 0x3120]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3120]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3120]
add eax, 1
mov dword [esp + 0x3120], eax
jmp 0x41483d
jmp 0x41488a
mov eax, dword [esp + 0x27d8]
mov ecx, dword [esp + 0x27dc]
mov dword [esp], ecx
call eax
sub esp, 4
mov dword [esp + 0x2ae0], 0
lea ecx, [esp + 0x2acf]
lea eax, [esp + 0x2ace]
mov dword [esp], eax
call fcn.00434490
sub esp, 4
lea eax, [esp + 0x2adf]
mov dword [esp + 0x2c40], eax
lea eax, [esp + 0x2acf]
mov dword [esp + 0x2c3c], eax
lea eax, [esp + 0x378c]
mov dword [esp + 0x3794], eax
mov eax, dword [esp + 0x3794]
mov dword [esp + 0x37f0], 0x30
mov ecx, dword [esp + 0x37f0]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x37ec], ecx
mov ecx, dword [esp + 0x37ec]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x378c]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3780]
mov dword [esp + 0x37a4], ecx
mov dword [esp + 0x37a0], eax
mov eax, dword [esp + 0x37a4]
mov ecx, dword [esp + 0x37a0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x37a0]
mov dword [esp + 0x37f4], ecx
mov ecx, dword [esp + 0x37f4]
mov edx, dword [esp + 0x37f4]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3798], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x379c], ecx
mov ecx, dword [esp + 0x37a0]
add ecx, dword [esp + 0x3798]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x379c]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3780]
mov dword [esp + 0x37a8], eax
mov ecx, dword [esp + 0x37a8]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x414b53
lea eax, [esp + 0x3780]
mov dword [esp + 0x37ac], eax
mov eax, dword [esp + 0x37ac]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x377c], eax
mov eax, dword [esp + 0x377c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x377c], ecx
cmp eax, 0
je 0x414b51
mov eax, dword [esp + 0x377c]
lea ecx, [esp + 0x3780]
mov dword [esp + 0x37c4], ecx
mov dword [esp + 0x37c0], eax
mov eax, dword [esp + 0x37c4]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x37c0]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x37cc], 0xde926285
mov dword [esp + 0x37c8], 0xceaa78a5
mov eax, dword [esp + 0x37cc]
mov dword [esp + 0x37bc], ecx
mov dword [esp + 0x37b8], eax
mov eax, dword [esp + 0x37b8]
mov dword [esp + 0x37b4], eax
mov eax, dword [esp + 0x37bc]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x37bc], ecx
mov al, byte [eax]
mov byte [esp + 0x37b3], al
cmp byte [esp + 0x37b3], 0
je 0x414b24
mov ecx, dword [esp + 0x37b4]
mov al, byte [esp + 0x37b3]
mov dword [esp + 0x37fc], ecx
mov byte [esp + 0x37fb], al
mov eax, dword [esp + 0x37fc]
mov dword [esp + 0x27d0], eax
movsx eax, byte [esp + 0x37fb]
cmp eax, 0x41
jl 0x414af3
movsx eax, byte [esp + 0x37fb]
cmp eax, 0x5a
jg 0x414af3
movsx eax, byte [esp + 0x37fb]
or eax, 0x20
mov dword [esp + 0x27cc], eax
jmp 0x414b02
movsx eax, byte [esp + 0x37fb]
mov dword [esp + 0x27cc], eax
mov eax, dword [esp + 0x27d0]
mov ecx, dword [esp + 0x27cc]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x37b4], eax
jmp 0x414a71
mov eax, dword [esp + 0x37b4]
mov dword [esp + 0x37d4], 0xde926285
mov dword [esp + 0x37d0], 0xceaa78a5
mov ecx, dword [esp + 0x37d0]
cmp eax, ecx
je 0x414b81
jmp 0x4149e1
jmp 0x414b53
lea eax, [esp + 0x378c]
mov dword [esp + 0x37e8], eax
mov eax, dword [esp + 0x37e8]
mov ecx, dword [eax]
mov dword [esp + 0x3800], ecx
mov ecx, dword [esp + 0x3800]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x414920
mov eax, dword [esp + 0x377c]
lea ecx, [esp + 0x3780]
mov dword [esp + 0x37e4], ecx
mov dword [esp + 0x37e0], eax
mov eax, dword [esp + 0x37e4]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x37dc], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x37d8], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x37dc]
mov edx, dword [esp + 0x37d8]
mov esi, dword [esp + 0x37e0]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3790], eax
mov eax, dword [esp + 0x3790]
mov dword [esp + 0x27c4], eax
mov eax, dword [esp + 0x2c3c]
mov dword [esp + 0x2f08], eax
mov eax, dword [esp + 0x2f08]
mov dword [esp + 0x2f64], eax
mov eax, dword [esp + 0x2f64]
mov dword [esp + 0x27c8], eax
mov dword [esp + 0x3000], eax
mov eax, dword [esp + 0x3000]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x414cb1
mov eax, dword [esp + 0x27c8]
mov dword [esp + 0x311c], eax
mov dword [esp + 0x3118], eax
mov eax, dword [esp + 0x311c]
mov dword [esp + 0x27c0], eax
mov dword [esp + 0x3114], 0
cmp dword [esp + 0x3114], 0x10
jge 0x414caf
mov eax, dword [esp + 0x27c0]
mov ecx, dword [esp + 0x3118]
mov edx, dword [esp + 0x3114]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3114]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3114]
add eax, 1
mov dword [esp + 0x3114], eax
jmp 0x414c64
jmp 0x414cb1
mov eax, dword [esp + 0x27c4]
mov ecx, dword [esp + 0x27c8]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [ebp + 8]
add eax, dword [esp + 0x2af8]
add eax, dword [esp + 0x2b38]
mov dword [esp + 0x2ac8], eax
lea ecx, [esp + 0x2ab7]
lea eax, [esp + 0x2ab6]
mov dword [esp], eax
call fcn.004344f0
sub esp, 4
lea eax, [esp + 0x2ac7]
mov dword [esp + 0x2c48], eax
lea eax, [esp + 0x2ab7]
mov dword [esp + 0x2c44], eax
lea eax, [esp + 0x3814]
mov dword [esp + 0x381c], eax
mov eax, dword [esp + 0x381c]
mov dword [esp + 0x3878], 0x30
mov ecx, dword [esp + 0x3878]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3874], ecx
mov ecx, dword [esp + 0x3874]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3814]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3808]
mov dword [esp + 0x382c], ecx
mov dword [esp + 0x3828], eax
mov eax, dword [esp + 0x382c]
mov ecx, dword [esp + 0x3828]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3828]
mov dword [esp + 0x387c], ecx
mov ecx, dword [esp + 0x387c]
mov edx, dword [esp + 0x387c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3820], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3824], ecx
mov ecx, dword [esp + 0x3828]
add ecx, dword [esp + 0x3820]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3824]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3808]
mov dword [esp + 0x3830], eax
mov ecx, dword [esp + 0x3830]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x414f87
lea eax, [esp + 0x3808]
mov dword [esp + 0x3834], eax
mov eax, dword [esp + 0x3834]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3804], eax
mov eax, dword [esp + 0x3804]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3804], ecx
cmp eax, 0
je 0x414f85
mov eax, dword [esp + 0x3804]
lea ecx, [esp + 0x3808]
mov dword [esp + 0x384c], ecx
mov dword [esp + 0x3848], eax
mov eax, dword [esp + 0x384c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3848]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3854], 0x3c9aae5
mov dword [esp + 0x3850], 0xe1745405
mov eax, dword [esp + 0x3854]
mov dword [esp + 0x3844], ecx
mov dword [esp + 0x3840], eax
mov eax, dword [esp + 0x3840]
mov dword [esp + 0x383c], eax
mov eax, dword [esp + 0x3844]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3844], ecx
mov al, byte [eax]
mov byte [esp + 0x383b], al
cmp byte [esp + 0x383b], 0
je 0x414f58
mov ecx, dword [esp + 0x383c]
mov al, byte [esp + 0x383b]
mov dword [esp + 0x3884], ecx
mov byte [esp + 0x3883], al
mov eax, dword [esp + 0x3884]
mov dword [esp + 0x27bc], eax
movsx eax, byte [esp + 0x3883]
cmp eax, 0x41
jl 0x414f27
movsx eax, byte [esp + 0x3883]
cmp eax, 0x5a
jg 0x414f27
movsx eax, byte [esp + 0x3883]
or eax, 0x20
mov dword [esp + 0x27b8], eax
jmp 0x414f36
movsx eax, byte [esp + 0x3883]
mov dword [esp + 0x27b8], eax
mov eax, dword [esp + 0x27bc]
mov ecx, dword [esp + 0x27b8]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x383c], eax
jmp 0x414ea5
mov eax, dword [esp + 0x383c]
mov dword [esp + 0x385c], 0x3c9aae5
mov dword [esp + 0x3858], 0xe1745405
mov ecx, dword [esp + 0x3858]
cmp eax, ecx
je 0x414fb5
jmp 0x414e15
jmp 0x414f87
lea eax, [esp + 0x3814]
mov dword [esp + 0x3870], eax
mov eax, dword [esp + 0x3870]
mov ecx, dword [eax]
mov dword [esp + 0x3888], ecx
mov ecx, dword [esp + 0x3888]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x414d54
mov eax, dword [esp + 0x3804]
lea ecx, [esp + 0x3808]
mov dword [esp + 0x386c], ecx
mov dword [esp + 0x3868], eax
mov eax, dword [esp + 0x386c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3864], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3860], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3864]
mov edx, dword [esp + 0x3860]
mov esi, dword [esp + 0x3868]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3818], eax
mov eax, dword [esp + 0x3818]
mov dword [esp + 0x27b0], eax
mov eax, dword [esp + 0x2c44]
mov dword [esp + 0x2f04], eax
mov eax, dword [esp + 0x2f04]
mov dword [esp + 0x2f68], eax
mov eax, dword [esp + 0x2f68]
mov dword [esp + 0x27b4], eax
mov dword [esp + 0x2ffc], eax
mov eax, dword [esp + 0x2ffc]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x4150e5
mov eax, dword [esp + 0x27b4]
mov dword [esp + 0x3110], eax
mov dword [esp + 0x310c], eax
mov eax, dword [esp + 0x3110]
mov dword [esp + 0x27ac], eax
mov dword [esp + 0x3108], 0
cmp dword [esp + 0x3108], 0x10
jge 0x4150e3
mov eax, dword [esp + 0x27ac]
mov ecx, dword [esp + 0x310c]
mov edx, dword [esp + 0x3108]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3108]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3108]
add eax, 1
mov dword [esp + 0x3108], eax
jmp 0x415098
jmp 0x4150e5
mov eax, dword [esp + 0x27b0]
mov ecx, dword [esp + 0x27b4]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [ebp + 8]
add eax, dword [esp + 0x2ae0]
add eax, dword [esp + 0x2b20]
mov dword [esp + 0x2ab0], eax
lea ecx, [esp + 0x2a9f]
lea eax, [esp + 0x2a9e]
mov dword [esp], eax
call fcn.00434550
sub esp, 4
lea eax, [esp + 0x2aaf]
mov dword [esp + 0x2c50], eax
lea eax, [esp + 0x2a9f]
mov dword [esp + 0x2c4c], eax
lea eax, [esp + 0x389c]
mov dword [esp + 0x38a4], eax
mov eax, dword [esp + 0x38a4]
mov dword [esp + 0x3900], 0x30
mov ecx, dword [esp + 0x3900]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x38fc], ecx
mov ecx, dword [esp + 0x38fc]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x389c]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3890]
mov dword [esp + 0x38b4], ecx
mov dword [esp + 0x38b0], eax
mov eax, dword [esp + 0x38b4]
mov ecx, dword [esp + 0x38b0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x38b0]
mov dword [esp + 0x3904], ecx
mov ecx, dword [esp + 0x3904]
mov edx, dword [esp + 0x3904]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x38a8], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x38ac], ecx
mov ecx, dword [esp + 0x38b0]
add ecx, dword [esp + 0x38a8]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x38ac]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3890]
mov dword [esp + 0x38b8], eax
mov ecx, dword [esp + 0x38b8]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x4153bb
lea eax, [esp + 0x3890]
mov dword [esp + 0x38bc], eax
mov eax, dword [esp + 0x38bc]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x388c], eax
mov eax, dword [esp + 0x388c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x388c], ecx
cmp eax, 0
je 0x4153b9
mov eax, dword [esp + 0x388c]
lea ecx, [esp + 0x3890]
mov dword [esp + 0x38d4], ecx
mov dword [esp + 0x38d0], eax
mov eax, dword [esp + 0x38d4]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x38d0]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x38dc], 0xc003cf92
mov dword [esp + 0x38d8], 0x696cac16
mov eax, dword [esp + 0x38dc]
mov dword [esp + 0x38cc], ecx
mov dword [esp + 0x38c8], eax
mov eax, dword [esp + 0x38c8]
mov dword [esp + 0x38c4], eax
mov eax, dword [esp + 0x38cc]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x38cc], ecx
mov al, byte [eax]
mov byte [esp + 0x38c3], al
cmp byte [esp + 0x38c3], 0
je 0x41538c
mov ecx, dword [esp + 0x38c4]
mov al, byte [esp + 0x38c3]
mov dword [esp + 0x390c], ecx
mov byte [esp + 0x390b], al
mov eax, dword [esp + 0x390c]
mov dword [esp + 0x27a8], eax
movsx eax, byte [esp + 0x390b]
cmp eax, 0x41
jl 0x41535b
movsx eax, byte [esp + 0x390b]
cmp eax, 0x5a
jg 0x41535b
movsx eax, byte [esp + 0x390b]
or eax, 0x20
mov dword [esp + 0x27a4], eax
jmp 0x41536a
movsx eax, byte [esp + 0x390b]
mov dword [esp + 0x27a4], eax
mov eax, dword [esp + 0x27a8]
mov ecx, dword [esp + 0x27a4]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x38c4], eax
jmp 0x4152d9
mov eax, dword [esp + 0x38c4]
mov dword [esp + 0x38e4], 0xc003cf92
mov dword [esp + 0x38e0], 0x696cac16
mov ecx, dword [esp + 0x38e0]
cmp eax, ecx
je 0x4153e9
jmp 0x415249
jmp 0x4153bb
lea eax, [esp + 0x389c]
mov dword [esp + 0x38f8], eax
mov eax, dword [esp + 0x38f8]
mov ecx, dword [eax]
mov dword [esp + 0x3910], ecx
mov ecx, dword [esp + 0x3910]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x415188
mov eax, dword [esp + 0x388c]
lea ecx, [esp + 0x3890]
mov dword [esp + 0x38f4], ecx
mov dword [esp + 0x38f0], eax
mov eax, dword [esp + 0x38f4]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x38ec], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x38e8], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x38ec]
mov edx, dword [esp + 0x38e8]
mov esi, dword [esp + 0x38f0]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x38a0], eax
mov eax, dword [esp + 0x38a0]
mov dword [esp + 0x279c], eax
mov eax, dword [esp + 0x2c4c]
mov dword [esp + 0x2f00], eax
mov eax, dword [esp + 0x2f00]
mov dword [esp + 0x2f6c], eax
mov eax, dword [esp + 0x2f6c]
mov dword [esp + 0x27a0], eax
mov dword [esp + 0x2ff8], eax
mov eax, dword [esp + 0x2ff8]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x415519
mov eax, dword [esp + 0x27a0]
mov dword [esp + 0x3104], eax
mov dword [esp + 0x3100], eax
mov eax, dword [esp + 0x3104]
mov dword [esp + 0x2798], eax
mov dword [esp + 0x30fc], 0
cmp dword [esp + 0x30fc], 0x10
jge 0x415517
mov eax, dword [esp + 0x2798]
mov ecx, dword [esp + 0x3100]
mov edx, dword [esp + 0x30fc]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x30fc]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x30fc]
add eax, 1
mov dword [esp + 0x30fc], eax
jmp 0x4154cc
jmp 0x415519
mov eax, dword [esp + 0x279c]
mov ecx, dword [esp + 0x27a0]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2ab0]
mov eax, dword [eax]
and eax, 0x80000000
cmp eax, 0
jne 0x41554e
mov al, 1
test al, al
jne 0x415dd0
jmp 0x41554e
mov eax, dword [esp + 0x2b50]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
sub esp, 4
mov ecx, eax
mov eax, dword [esp + 0x2ab0]
mov eax, dword [eax]
and eax, 0xffff
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [esp + 0x2a98], eax
lea ecx, [esp + 0x2a87]
lea eax, [esp + 0x2a86]
mov dword [esp], eax
call fcn.004345b0
sub esp, 4
lea eax, [esp + 0x2a97]
mov dword [esp + 0x2c58], eax
lea eax, [esp + 0x2a87]
mov dword [esp + 0x2c54], eax
lea eax, [esp + 0x3924]
mov dword [esp + 0x392c], eax
mov eax, dword [esp + 0x392c]
mov dword [esp + 0x3988], 0x30
mov ecx, dword [esp + 0x3988]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3984], ecx
mov ecx, dword [esp + 0x3984]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3924]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3918]
mov dword [esp + 0x393c], ecx
mov dword [esp + 0x3938], eax
mov eax, dword [esp + 0x393c]
mov ecx, dword [esp + 0x3938]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3938]
mov dword [esp + 0x398c], ecx
mov ecx, dword [esp + 0x398c]
mov edx, dword [esp + 0x398c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3930], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3934], ecx
mov ecx, dword [esp + 0x3938]
add ecx, dword [esp + 0x3930]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3934]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3918]
mov dword [esp + 0x3940], eax
mov ecx, dword [esp + 0x3940]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x415830
lea eax, [esp + 0x3918]
mov dword [esp + 0x3944], eax
mov eax, dword [esp + 0x3944]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3914], eax
mov eax, dword [esp + 0x3914]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3914], ecx
cmp eax, 0
je 0x41582e
mov eax, dword [esp + 0x3914]
lea ecx, [esp + 0x3918]
mov dword [esp + 0x395c], ecx
mov dword [esp + 0x3958], eax
mov eax, dword [esp + 0x395c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3958]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3964], 0xfc670e4d
mov dword [esp + 0x3960], 0x8b6ba3dd
mov eax, dword [esp + 0x3964]
mov dword [esp + 0x3954], ecx
mov dword [esp + 0x3950], eax
mov eax, dword [esp + 0x3950]
mov dword [esp + 0x394c], eax
mov eax, dword [esp + 0x3954]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3954], ecx
mov al, byte [eax]
mov byte [esp + 0x394b], al
cmp byte [esp + 0x394b], 0
je 0x415801
mov ecx, dword [esp + 0x394c]
mov al, byte [esp + 0x394b]
mov dword [esp + 0x3994], ecx
mov byte [esp + 0x3993], al
mov eax, dword [esp + 0x3994]
mov dword [esp + 0x2794], eax
movsx eax, byte [esp + 0x3993]
cmp eax, 0x41
jl 0x4157d0
movsx eax, byte [esp + 0x3993]
cmp eax, 0x5a
jg 0x4157d0
movsx eax, byte [esp + 0x3993]
or eax, 0x20
mov dword [esp + 0x2790], eax
jmp 0x4157df
movsx eax, byte [esp + 0x3993]
mov dword [esp + 0x2790], eax
mov eax, dword [esp + 0x2794]
mov ecx, dword [esp + 0x2790]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x394c], eax
jmp 0x41574e
mov eax, dword [esp + 0x394c]
mov dword [esp + 0x396c], 0xfc670e4d
mov dword [esp + 0x3968], 0x8b6ba3dd
mov ecx, dword [esp + 0x3968]
cmp eax, ecx
je 0x41585e
jmp 0x4156be
jmp 0x415830
lea eax, [esp + 0x3924]
mov dword [esp + 0x3980], eax
mov eax, dword [esp + 0x3980]
mov ecx, dword [eax]
mov dword [esp + 0x3998], ecx
mov ecx, dword [esp + 0x3998]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4155fd
mov eax, dword [esp + 0x3914]
lea ecx, [esp + 0x3918]
mov dword [esp + 0x397c], ecx
mov dword [esp + 0x3978], eax
mov eax, dword [esp + 0x397c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3974], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3970], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3974]
mov edx, dword [esp + 0x3970]
mov esi, dword [esp + 0x3978]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3928], eax
mov eax, dword [esp + 0x3928]
mov dword [esp + 0x2788], eax
mov eax, dword [esp + 0x2c54]
mov dword [esp + 0x2efc], eax
mov eax, dword [esp + 0x2efc]
mov dword [esp + 0x2f70], eax
mov eax, dword [esp + 0x2f70]
mov dword [esp + 0x278c], eax
mov dword [esp + 0x2ff4], eax
mov eax, dword [esp + 0x2ff4]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x41598e
mov eax, dword [esp + 0x278c]
mov dword [esp + 0x30f8], eax
mov dword [esp + 0x30f4], eax
mov eax, dword [esp + 0x30f8]
mov dword [esp + 0x2784], eax
mov dword [esp + 0x30f0], 0
cmp dword [esp + 0x30f0], 0x10
jge 0x41598c
mov eax, dword [esp + 0x2784]
mov ecx, dword [esp + 0x30f4]
mov edx, dword [esp + 0x30f0]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x30f0]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x30f0]
add eax, 1
mov dword [esp + 0x30f0], eax
jmp 0x415941
jmp 0x41598e
mov eax, dword [esp + 0x2788]
mov ecx, dword [esp + 0x278c]
mov dword [esp], ecx
call eax
sub esp, 4
mov ecx, dword [esp + 0x2a98]
mov eax, dword [esp + 0x2ac8]
mov dword [eax], ecx
lea ecx, [esp + 0x2a75]
lea eax, [esp + 0x2a74]
mov dword [esp], eax
call fcn.00434610
sub esp, 4
lea eax, [esp + 0x2a85]
mov dword [esp + 0x2c60], eax
lea eax, [esp + 0x2a75]
mov dword [esp + 0x2c5c], eax
lea eax, [esp + 0x39ac]
mov dword [esp + 0x39b4], eax
mov eax, dword [esp + 0x39b4]
mov dword [esp + 0x3a10], 0x30
mov ecx, dword [esp + 0x3a10]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3a0c], ecx
mov ecx, dword [esp + 0x3a0c]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x39ac]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x39a0]
mov dword [esp + 0x39c4], ecx
mov dword [esp + 0x39c0], eax
mov eax, dword [esp + 0x39c4]
mov ecx, dword [esp + 0x39c0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x39c0]
mov dword [esp + 0x3a14], ecx
mov ecx, dword [esp + 0x3a14]
mov edx, dword [esp + 0x3a14]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x39b8], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x39bc], ecx
mov ecx, dword [esp + 0x39c0]
add ecx, dword [esp + 0x39b8]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x39bc]
mov dword [eax + 8], ecx
lea eax, [esp + 0x39a0]
mov dword [esp + 0x39c8], eax
mov ecx, dword [esp + 0x39c8]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x415c5c
lea eax, [esp + 0x39a0]
mov dword [esp + 0x39cc], eax
mov eax, dword [esp + 0x39cc]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x399c], eax
mov eax, dword [esp + 0x399c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x399c], ecx
cmp eax, 0
je 0x415c5a
mov eax, dword [esp + 0x399c]
lea ecx, [esp + 0x39a0]
mov dword [esp + 0x39e4], ecx
mov dword [esp + 0x39e0], eax
mov eax, dword [esp + 0x39e4]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x39e0]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x39ec], 0x560bd298
mov dword [esp + 0x39e8], 0x2ad14b90
mov eax, dword [esp + 0x39ec]
mov dword [esp + 0x39dc], ecx
mov dword [esp + 0x39d8], eax
mov eax, dword [esp + 0x39d8]
mov dword [esp + 0x39d4], eax
mov eax, dword [esp + 0x39dc]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x39dc], ecx
mov al, byte [eax]
mov byte [esp + 0x39d3], al
cmp byte [esp + 0x39d3], 0
je 0x415c2d
mov ecx, dword [esp + 0x39d4]
mov al, byte [esp + 0x39d3]
mov dword [esp + 0x3a1c], ecx
mov byte [esp + 0x3a1b], al
mov eax, dword [esp + 0x3a1c]
mov dword [esp + 0x2780], eax
movsx eax, byte [esp + 0x3a1b]
cmp eax, 0x41
jl 0x415bfc
movsx eax, byte [esp + 0x3a1b]
cmp eax, 0x5a
jg 0x415bfc
movsx eax, byte [esp + 0x3a1b]
or eax, 0x20
mov dword [esp + 0x277c], eax
jmp 0x415c0b
movsx eax, byte [esp + 0x3a1b]
mov dword [esp + 0x277c], eax
mov eax, dword [esp + 0x2780]
mov ecx, dword [esp + 0x277c]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x39d4], eax
jmp 0x415b7a
mov eax, dword [esp + 0x39d4]
mov dword [esp + 0x39f4], 0x560bd298
mov dword [esp + 0x39f0], 0x2ad14b90
mov ecx, dword [esp + 0x39f0]
cmp eax, ecx
je 0x415c8a
jmp 0x415aea
jmp 0x415c5c
lea eax, [esp + 0x39ac]
mov dword [esp + 0x3a08], eax
mov eax, dword [esp + 0x3a08]
mov ecx, dword [eax]
mov dword [esp + 0x3a20], ecx
mov ecx, dword [esp + 0x3a20]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x415a29
mov eax, dword [esp + 0x399c]
lea ecx, [esp + 0x39a0]
mov dword [esp + 0x3a04], ecx
mov dword [esp + 0x3a00], eax
mov eax, dword [esp + 0x3a04]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x39fc], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x39f8], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x39fc]
mov edx, dword [esp + 0x39f8]
mov esi, dword [esp + 0x3a00]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x39b0], eax
mov eax, dword [esp + 0x39b0]
mov dword [esp + 0x2774], eax
mov eax, dword [esp + 0x2c5c]
mov dword [esp + 0x2ef8], eax
mov eax, dword [esp + 0x2ef8]
mov dword [esp + 0x2f74], eax
mov eax, dword [esp + 0x2f74]
mov dword [esp + 0x2778], eax
mov dword [esp + 0x2ff0], eax
mov eax, dword [esp + 0x2ff0]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x415dba
mov eax, dword [esp + 0x2778]
mov dword [esp + 0x30ec], eax
mov dword [esp + 0x30e8], eax
mov eax, dword [esp + 0x30ec]
mov dword [esp + 0x2770], eax
mov dword [esp + 0x30e4], 0
cmp dword [esp + 0x30e4], 0x10
jge 0x415db8
mov eax, dword [esp + 0x2770]
mov ecx, dword [esp + 0x30e8]
mov edx, dword [esp + 0x30e4]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x30e4]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x30e4]
add eax, 1
mov dword [esp + 0x30e4], eax
jmp 0x415d6d
jmp 0x415dba
mov eax, dword [esp + 0x2774]
mov ecx, dword [esp + 0x2778]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2ac8]
cmp dword [eax], 0
jne 0x415de1
jmp 0x433c2b
mov eax, dword [esp + 0x2ac8]
mov eax, dword [eax]
mov ecx, dword [esp + 0x2ab0]
cmp eax, dword [ecx]
jne 0x43341c
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x2ab0]
add eax, dword [ecx]
mov dword [esp + 0x2a70], eax
lea ecx, [esp + 0x2a5f]
lea eax, [esp + 0x2a5e]
mov dword [esp], eax
call fcn.00434670
sub esp, 4
lea eax, [esp + 0x2a6f]
mov dword [esp + 0x2c68], eax
lea eax, [esp + 0x2a5f]
mov dword [esp + 0x2c64], eax
lea eax, [esp + 0x3a34]
mov dword [esp + 0x3a3c], eax
mov eax, dword [esp + 0x3a3c]
mov dword [esp + 0x3a98], 0x30
mov ecx, dword [esp + 0x3a98]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3a94], ecx
mov ecx, dword [esp + 0x3a94]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3a34]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3a28]
mov dword [esp + 0x3a4c], ecx
mov dword [esp + 0x3a48], eax
mov eax, dword [esp + 0x3a4c]
mov ecx, dword [esp + 0x3a48]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3a48]
mov dword [esp + 0x3a9c], ecx
mov ecx, dword [esp + 0x3a9c]
mov edx, dword [esp + 0x3a9c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3a40], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3a44], ecx
mov ecx, dword [esp + 0x3a48]
add ecx, dword [esp + 0x3a40]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a44]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3a28]
mov dword [esp + 0x3a50], eax
mov ecx, dword [esp + 0x3a50]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x4160b4
lea eax, [esp + 0x3a28]
mov dword [esp + 0x3a54], eax
mov eax, dword [esp + 0x3a54]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3a24], eax
mov eax, dword [esp + 0x3a24]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3a24], ecx
cmp eax, 0
je 0x4160b2
mov eax, dword [esp + 0x3a24]
lea ecx, [esp + 0x3a28]
mov dword [esp + 0x3a6c], ecx
mov dword [esp + 0x3a68], eax
mov eax, dword [esp + 0x3a6c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3a68]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3a74], 0x7d1e88a4
mov dword [esp + 0x3a70], 0x930b9bac
mov eax, dword [esp + 0x3a74]
mov dword [esp + 0x3a64], ecx
mov dword [esp + 0x3a60], eax
mov eax, dword [esp + 0x3a60]
mov dword [esp + 0x3a5c], eax
mov eax, dword [esp + 0x3a64]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3a64], ecx
mov al, byte [eax]
mov byte [esp + 0x3a5b], al
cmp byte [esp + 0x3a5b], 0
je 0x416085
mov ecx, dword [esp + 0x3a5c]
mov al, byte [esp + 0x3a5b]
mov dword [esp + 0x3aa4], ecx
mov byte [esp + 0x3aa3], al
mov eax, dword [esp + 0x3aa4]
mov dword [esp + 0x276c], eax
movsx eax, byte [esp + 0x3aa3]
cmp eax, 0x41
jl 0x416054
movsx eax, byte [esp + 0x3aa3]
cmp eax, 0x5a
jg 0x416054
movsx eax, byte [esp + 0x3aa3]
or eax, 0x20
mov dword [esp + 0x2768], eax
jmp 0x416063
movsx eax, byte [esp + 0x3aa3]
mov dword [esp + 0x2768], eax
mov eax, dword [esp + 0x276c]
mov ecx, dword [esp + 0x2768]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3a5c], eax
jmp 0x415fd2
mov eax, dword [esp + 0x3a5c]
mov dword [esp + 0x3a7c], 0x7d1e88a4
mov dword [esp + 0x3a78], 0x930b9bac
mov ecx, dword [esp + 0x3a78]
cmp eax, ecx
je 0x4160e2
jmp 0x415f42
jmp 0x4160b4
lea eax, [esp + 0x3a34]
mov dword [esp + 0x3a90], eax
mov eax, dword [esp + 0x3a90]
mov ecx, dword [eax]
mov dword [esp + 0x3aa8], ecx
mov ecx, dword [esp + 0x3aa8]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x415e81
mov eax, dword [esp + 0x3a24]
lea ecx, [esp + 0x3a28]
mov dword [esp + 0x3a8c], ecx
mov dword [esp + 0x3a88], eax
mov eax, dword [esp + 0x3a8c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3a84], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3a80], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3a84]
mov edx, dword [esp + 0x3a80]
mov esi, dword [esp + 0x3a88]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3a38], eax
mov eax, dword [esp + 0x3a38]
mov dword [esp + 0x2760], eax
mov eax, dword [esp + 0x2c64]
mov dword [esp + 0x2ef4], eax
mov eax, dword [esp + 0x2ef4]
mov dword [esp + 0x2f78], eax
mov eax, dword [esp + 0x2f78]
mov dword [esp + 0x2764], eax
mov dword [esp + 0x2fec], eax
mov eax, dword [esp + 0x2fec]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x416212
mov eax, dword [esp + 0x2764]
mov dword [esp + 0x30e0], eax
mov dword [esp + 0x30dc], eax
mov eax, dword [esp + 0x30e0]
mov dword [esp + 0x275c], eax
mov dword [esp + 0x30d8], 0
cmp dword [esp + 0x30d8], 0x10
jge 0x416210
mov eax, dword [esp + 0x275c]
mov ecx, dword [esp + 0x30dc]
mov edx, dword [esp + 0x30d8]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x30d8]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x30d8]
add eax, 1
mov dword [esp + 0x30d8], eax
jmp 0x4161c5
jmp 0x416212
mov eax, dword [esp + 0x2760]
mov ecx, dword [esp + 0x2764]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2a70]
add eax, 2
mov dword [esp + 0x2a58], eax
lea ecx, [esp + 0x2a47]
lea eax, [esp + 0x2a46]
mov dword [esp], eax
call fcn.004346d0
sub esp, 4
lea eax, [esp + 0x2a57]
mov dword [esp + 0x2c70], eax
lea eax, [esp + 0x2a47]
mov dword [esp + 0x2c6c], eax
lea eax, [esp + 0x3abc]
mov dword [esp + 0x3ac4], eax
mov eax, dword [esp + 0x3ac4]
mov dword [esp + 0x3b20], 0x30
mov ecx, dword [esp + 0x3b20]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3b1c], ecx
mov ecx, dword [esp + 0x3b1c]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3abc]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3ab0]
mov dword [esp + 0x3ad4], ecx
mov dword [esp + 0x3ad0], eax
mov eax, dword [esp + 0x3ad4]
mov ecx, dword [esp + 0x3ad0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3ad0]
mov dword [esp + 0x3b24], ecx
mov ecx, dword [esp + 0x3b24]
mov edx, dword [esp + 0x3b24]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3ac8], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3acc], ecx
mov ecx, dword [esp + 0x3ad0]
add ecx, dword [esp + 0x3ac8]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3acc]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3ab0]
mov dword [esp + 0x3ad8], eax
mov ecx, dword [esp + 0x3ad8]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x4164e1
lea eax, [esp + 0x3ab0]
mov dword [esp + 0x3adc], eax
mov eax, dword [esp + 0x3adc]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3aac], eax
mov eax, dword [esp + 0x3aac]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3aac], ecx
cmp eax, 0
je 0x4164df
mov eax, dword [esp + 0x3aac]
lea ecx, [esp + 0x3ab0]
mov dword [esp + 0x3af4], ecx
mov dword [esp + 0x3af0], eax
mov eax, dword [esp + 0x3af4]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3af0]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3afc], 0x40a3e129
mov dword [esp + 0x3af8], 0x38cc0709
mov eax, dword [esp + 0x3afc]
mov dword [esp + 0x3aec], ecx
mov dword [esp + 0x3ae8], eax
mov eax, dword [esp + 0x3ae8]
mov dword [esp + 0x3ae4], eax
mov eax, dword [esp + 0x3aec]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3aec], ecx
mov al, byte [eax]
mov byte [esp + 0x3ae3], al
cmp byte [esp + 0x3ae3], 0
je 0x4164b2
mov ecx, dword [esp + 0x3ae4]
mov al, byte [esp + 0x3ae3]
mov dword [esp + 0x3b2c], ecx
mov byte [esp + 0x3b2b], al
mov eax, dword [esp + 0x3b2c]
mov dword [esp + 0x2758], eax
movsx eax, byte [esp + 0x3b2b]
cmp eax, 0x41
jl 0x416481
movsx eax, byte [esp + 0x3b2b]
cmp eax, 0x5a
jg 0x416481
movsx eax, byte [esp + 0x3b2b]
or eax, 0x20
mov dword [esp + 0x2754], eax
jmp 0x416490
movsx eax, byte [esp + 0x3b2b]
mov dword [esp + 0x2754], eax
mov eax, dword [esp + 0x2758]
mov ecx, dword [esp + 0x2754]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3ae4], eax
jmp 0x4163ff
mov eax, dword [esp + 0x3ae4]
mov dword [esp + 0x3b04], 0x40a3e129
mov dword [esp + 0x3b00], 0x38cc0709
mov ecx, dword [esp + 0x3b00]
cmp eax, ecx
je 0x41650f
jmp 0x41636f
jmp 0x4164e1
lea eax, [esp + 0x3abc]
mov dword [esp + 0x3b18], eax
mov eax, dword [esp + 0x3b18]
mov ecx, dword [eax]
mov dword [esp + 0x3b30], ecx
mov ecx, dword [esp + 0x3b30]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4162ae
mov eax, dword [esp + 0x3aac]
lea ecx, [esp + 0x3ab0]
mov dword [esp + 0x3b14], ecx
mov dword [esp + 0x3b10], eax
mov eax, dword [esp + 0x3b14]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3b0c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3b08], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3b0c]
mov edx, dword [esp + 0x3b08]
mov esi, dword [esp + 0x3b10]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3ac0], eax
mov eax, dword [esp + 0x3ac0]
mov dword [esp + 0x274c], eax
mov eax, dword [esp + 0x2c6c]
mov dword [esp + 0x2ef0], eax
mov eax, dword [esp + 0x2ef0]
mov dword [esp + 0x2f7c], eax
mov eax, dword [esp + 0x2f7c]
mov dword [esp + 0x2750], eax
mov dword [esp + 0x2fe8], eax
mov eax, dword [esp + 0x2fe8]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x41663f
mov eax, dword [esp + 0x2750]
mov dword [esp + 0x30d4], eax
mov dword [esp + 0x30d0], eax
mov eax, dword [esp + 0x30d4]
mov dword [esp + 0x2748], eax
mov dword [esp + 0x30cc], 0
cmp dword [esp + 0x30cc], 0x10
jge 0x41663d
mov eax, dword [esp + 0x2748]
mov ecx, dword [esp + 0x30d0]
mov edx, dword [esp + 0x30cc]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x30cc]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x30cc]
add eax, 1
mov dword [esp + 0x30cc], eax
jmp 0x4165f2
jmp 0x41663f
mov eax, dword [esp + 0x274c]
mov ecx, dword [esp + 0x2750]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2b50]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
sub esp, 4
mov ecx, eax
mov eax, dword [esp + 0x2a58]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [esp + 0x2a40], eax
lea ecx, [esp + 0x2a2f]
lea eax, [esp + 0x2a2e]
mov dword [esp], eax
call fcn.00434730
sub esp, 4
lea eax, [esp + 0x2a3f]
mov dword [esp + 0x2c78], eax
lea eax, [esp + 0x2a2f]
mov dword [esp + 0x2c74], eax
lea eax, [esp + 0x3b44]
mov dword [esp + 0x3b4c], eax
mov eax, dword [esp + 0x3b4c]
mov dword [esp + 0x3ba8], 0x30
mov ecx, dword [esp + 0x3ba8]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3ba4], ecx
mov ecx, dword [esp + 0x3ba4]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3b44]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3b38]
mov dword [esp + 0x3b5c], ecx
mov dword [esp + 0x3b58], eax
mov eax, dword [esp + 0x3b5c]
mov ecx, dword [esp + 0x3b58]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3b58]
mov dword [esp + 0x3bac], ecx
mov ecx, dword [esp + 0x3bac]
mov edx, dword [esp + 0x3bac]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3b50], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3b54], ecx
mov ecx, dword [esp + 0x3b58]
add ecx, dword [esp + 0x3b50]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3b54]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3b38]
mov dword [esp + 0x3b60], eax
mov ecx, dword [esp + 0x3b60]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x416930
lea eax, [esp + 0x3b38]
mov dword [esp + 0x3b64], eax
mov eax, dword [esp + 0x3b64]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3b34], eax
mov eax, dword [esp + 0x3b34]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3b34], ecx
cmp eax, 0
je 0x41692e
mov eax, dword [esp + 0x3b34]
lea ecx, [esp + 0x3b38]
mov dword [esp + 0x3b7c], ecx
mov dword [esp + 0x3b78], eax
mov eax, dword [esp + 0x3b7c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3b78]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3b84], 0x95ccd2dd
mov dword [esp + 0x3b80], 0x26039c4d
mov eax, dword [esp + 0x3b84]
mov dword [esp + 0x3b74], ecx
mov dword [esp + 0x3b70], eax
mov eax, dword [esp + 0x3b70]
mov dword [esp + 0x3b6c], eax
mov eax, dword [esp + 0x3b74]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3b74], ecx
mov al, byte [eax]
mov byte [esp + 0x3b6b], al
cmp byte [esp + 0x3b6b], 0
je 0x416901
mov ecx, dword [esp + 0x3b6c]
mov al, byte [esp + 0x3b6b]
mov dword [esp + 0x3bb4], ecx
mov byte [esp + 0x3bb3], al
mov eax, dword [esp + 0x3bb4]
mov dword [esp + 0x2744], eax
movsx eax, byte [esp + 0x3bb3]
cmp eax, 0x41
jl 0x4168d0
movsx eax, byte [esp + 0x3bb3]
cmp eax, 0x5a
jg 0x4168d0
movsx eax, byte [esp + 0x3bb3]
or eax, 0x20
mov dword [esp + 0x2740], eax
jmp 0x4168df
movsx eax, byte [esp + 0x3bb3]
mov dword [esp + 0x2740], eax
mov eax, dword [esp + 0x2744]
mov ecx, dword [esp + 0x2740]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3b6c], eax
jmp 0x41684e
mov eax, dword [esp + 0x3b6c]
mov dword [esp + 0x3b8c], 0x95ccd2dd
mov dword [esp + 0x3b88], 0x26039c4d
mov ecx, dword [esp + 0x3b88]
cmp eax, ecx
je 0x41695e
jmp 0x4167be
jmp 0x416930
lea eax, [esp + 0x3b44]
mov dword [esp + 0x3ba0], eax
mov eax, dword [esp + 0x3ba0]
mov ecx, dword [eax]
mov dword [esp + 0x3bb8], ecx
mov ecx, dword [esp + 0x3bb8]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4166fd
mov eax, dword [esp + 0x3b34]
lea ecx, [esp + 0x3b38]
mov dword [esp + 0x3b9c], ecx
mov dword [esp + 0x3b98], eax
mov eax, dword [esp + 0x3b9c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3b94], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3b90], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3b94]
mov edx, dword [esp + 0x3b90]
mov esi, dword [esp + 0x3b98]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3b48], eax
mov eax, dword [esp + 0x3b48]
mov dword [esp + 0x2738], eax
mov eax, dword [esp + 0x2c74]
mov dword [esp + 0x2eec], eax
mov eax, dword [esp + 0x2eec]
mov dword [esp + 0x2f80], eax
mov eax, dword [esp + 0x2f80]
mov dword [esp + 0x273c], eax
mov dword [esp + 0x2fe4], eax
mov eax, dword [esp + 0x2fe4]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x416a8e
mov eax, dword [esp + 0x273c]
mov dword [esp + 0x30c8], eax
mov dword [esp + 0x30c4], eax
mov eax, dword [esp + 0x30c8]
mov dword [esp + 0x2734], eax
mov dword [esp + 0x30c0], 0
cmp dword [esp + 0x30c0], 0x10
jge 0x416a8c
mov eax, dword [esp + 0x2734]
mov ecx, dword [esp + 0x30c4]
mov edx, dword [esp + 0x30c0]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x30c0]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x30c0]
add eax, 1
mov dword [esp + 0x30c0], eax
jmp 0x416a41
jmp 0x416a8e
mov eax, dword [esp + 0x2738]
mov ecx, dword [esp + 0x273c]
mov dword [esp], ecx
call eax
sub esp, 4
xor eax, eax
cmp dword [0x4a4f60], 0
mov byte [esp + 0x2733], al
je 0x418933
mov eax, dword [esp + 0x2a58]
mov dword [esp + 0x2728], eax
lea ecx, [esp + 0x2a1d]
lea eax, [esp + 0x2a1c]
mov dword [esp], eax
call fcn.00434790
sub esp, 4
lea eax, [esp + 0x2a1d]
mov dword [esp + 0x2c7c], eax
mov eax, dword [esp + 0x2c7c]
mov dword [esp + 0x421c], eax
mov eax, dword [esp + 0x421c]
mov dword [esp + 0x272c], eax
test byte [eax], 1
jne 0x418905
mov eax, dword [esp + 0x272c]
add eax, 1
mov dword [esp + 0x4224], eax
mov dword [esp + 0x4220], 0
mov eax, dword [esp + 0x4220]
cmp eax, 0x10
jae 0x418903
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x271c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x271c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2720], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2720]
movsx ecx, cl
imul ecx, ecx, 7
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2724], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2724]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417113
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x270c], eax
mov dword [esp + 0x430c], 0xc0400000
mov dword [esp + 0x4308], 0
xor eax, eax
je 0x416be2
add dl, dh
movups xmm0, xmmword [esp + 0x4308]
movsd xmm0, qword [esp + 0x4308]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4300], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2710], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2710]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2718], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2714], eax
call fcn.00434890
mov ecx, dword [esp + 0x2714]
mov dl, al
mov eax, dword [esp + 0x2718]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x416d12
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2700], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2700]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2704], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2704]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2708], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2708]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x416d10
mov dword [esp + 0x4310], 0xa
jmp 0x416e3f
jmp 0x416d12
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x26f4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x26f4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x26fc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x26f8], eax
call fcn.00434890
mov ecx, dword [esp + 0x26f8]
mov dl, al
mov eax, dword [esp + 0x26fc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x416e3d
movsd xmm0, qword [esp + 0x4300]
movsd qword [esp + 0x26e8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x26e0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x26e0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x26f0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x26e4], eax
call fcn.00434890
mov ecx, dword [esp + 0x26e4]
movsd xmm0, qword [esp + 0x26e8]
mov dl, al
mov eax, dword [esp + 0x26f0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4310], eax
jmp 0x416e3f
ud2
mov eax, dword [esp + 0x270c]
mov ecx, dword [esp + 0x4310]
add eax, ecx
mov dword [esp + 0x26cc], eax
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x26d0], eax
mov dword [esp + 0x42f4], 0xc0400000
mov dword [esp + 0x42f0], 0
xor eax, eax
je 0x416e8a
add dl, dh
movups xmm0, xmmword [esp + 0x42f0]
movsd xmm0, qword [esp + 0x42f0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x42e8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x26d4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x26d4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x26dc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x26d8], eax
call fcn.00434890
mov ecx, dword [esp + 0x26d8]
mov dl, al
mov eax, dword [esp + 0x26dc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x416fba
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x26c0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x26c0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x26c4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x26c4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x26c8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x26c8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x416fb8
mov dword [esp + 0x42fc], 0xa
jmp 0x4170e7
jmp 0x416fba
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x26b4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x26b4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x26bc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x26b8], eax
call fcn.00434890
mov ecx, dword [esp + 0x26b8]
mov dl, al
mov eax, dword [esp + 0x26bc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4170e5
movsd xmm0, qword [esp + 0x42e8]
movsd qword [esp + 0x26a8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x26a0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x26a0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x26b0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x26a4], eax
call fcn.00434890
mov ecx, dword [esp + 0x26a4]
movsd xmm0, qword [esp + 0x26a8]
mov dl, al
mov eax, dword [esp + 0x26b0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x42fc], eax
jmp 0x4170e7
ud2
mov eax, dword [esp + 0x26cc]
mov ecx, dword [esp + 0x26d0]
and ecx, dword [esp + 0x42fc]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
mov byte [eax + ecx], dl
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2694], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2694]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x269c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 9
mov dword [esp + 0x2698], eax
call fcn.00434890
mov ecx, dword [esp + 0x2698]
mov dl, al
mov eax, dword [esp + 0x269c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41831a
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2688], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2688]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x268c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x268c]
movsx ecx, cl
shl ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2690], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2690]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41775f
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2678], eax
mov dword [esp + 0x42dc], 0xc03f0000
mov dword [esp + 0x42d8], 0
xor eax, eax
je 0x41722e
add dl, dh
movups xmm0, xmmword [esp + 0x42d8]
movsd xmm0, qword [esp + 0x42d8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x42d0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x267c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x267c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2684], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2680], eax
call fcn.00434890
mov ecx, dword [esp + 0x2680]
mov dl, al
mov eax, dword [esp + 0x2684]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41735e
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x266c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x266c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2670], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2670]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2674], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2674]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41735c
mov dword [esp + 0x42e4], 0xa
jmp 0x41748b
jmp 0x41735e
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2660], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2660]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2668], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2664], eax
call fcn.00434890
mov ecx, dword [esp + 0x2664]
mov dl, al
mov eax, dword [esp + 0x2668]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417489
movsd xmm0, qword [esp + 0x42d0]
movsd qword [esp + 0x2650], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2648], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2648]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x265c], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x264c], eax
call fcn.00434890
mov ecx, dword [esp + 0x264c]
movsd xmm0, qword [esp + 0x2650]
mov dl, al
mov eax, dword [esp + 0x265c]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x42e4], eax
jmp 0x41748b
ud2
mov eax, dword [esp + 0x2678]
mov ecx, dword [esp + 0x42e4]
add eax, ecx
mov dword [esp + 0x2634], eax
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2638], eax
mov dword [esp + 0x42c4], 0xc03f0000
mov dword [esp + 0x42c0], 0
xor eax, eax
je 0x4174d6
add dl, dh
movups xmm0, xmmword [esp + 0x42c0]
movsd xmm0, qword [esp + 0x42c0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x42b8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x263c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x263c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2644], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2640], eax
call fcn.00434890
mov ecx, dword [esp + 0x2640]
mov dl, al
mov eax, dword [esp + 0x2644]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417606
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2628], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2628]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x262c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x262c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2630], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2630]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417604
mov dword [esp + 0x42cc], 0xa
jmp 0x417733
jmp 0x417606
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x261c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x261c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2624], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2620], eax
call fcn.00434890
mov ecx, dword [esp + 0x2620]
mov dl, al
mov eax, dword [esp + 0x2624]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417731
movsd xmm0, qword [esp + 0x42b8]
movsd qword [esp + 0x2610], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2608], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2608]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2618], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x260c], eax
call fcn.00434890
mov ecx, dword [esp + 0x260c]
movsd xmm0, qword [esp + 0x2610]
mov dl, al
mov eax, dword [esp + 0x2618]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x42cc], eax
jmp 0x417733
ud2
mov eax, dword [esp + 0x2634]
mov ecx, dword [esp + 0x2638]
and ecx, dword [esp + 0x42cc]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
mov byte [eax + ecx], dl
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x25fc], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x25fc]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2600], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2600]
movsx ecx, cl
imul ecx, ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2604], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2604]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417d32
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x25ec], eax
mov dword [esp + 0x42ac], 0xc03e0000
mov dword [esp + 0x42a8], 0
xor eax, eax
je 0x417801
add dl, dh
movups xmm0, xmmword [esp + 0x42a8]
movsd xmm0, qword [esp + 0x42a8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x42a0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x25f0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x25f0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x25f8], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x25f4], eax
call fcn.00434890
mov ecx, dword [esp + 0x25f4]
mov dl, al
mov eax, dword [esp + 0x25f8]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417931
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x25e0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x25e0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x25e4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x25e4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x25e8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x25e8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41792f
mov dword [esp + 0x42b4], 0xa
jmp 0x417a5e
jmp 0x417931
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x25d4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x25d4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x25dc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x25d8], eax
call fcn.00434890
mov ecx, dword [esp + 0x25d8]
mov dl, al
mov eax, dword [esp + 0x25dc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417a5c
movsd xmm0, qword [esp + 0x42a0]
movsd qword [esp + 0x25c8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x25c0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x25c0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x25d0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x25c4], eax
call fcn.00434890
mov ecx, dword [esp + 0x25c4]
movsd xmm0, qword [esp + 0x25c8]
mov dl, al
mov eax, dword [esp + 0x25d0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x42b4], eax
jmp 0x417a5e
ud2
mov eax, dword [esp + 0x25ec]
mov ecx, dword [esp + 0x42b4]
add eax, ecx
mov dword [esp + 0x25ac], eax
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x25b0], eax
mov dword [esp + 0x4294], 0xc03e0000
mov dword [esp + 0x4290], 0
xor eax, eax
je 0x417aa9
add dl, dh
movups xmm0, xmmword [esp + 0x4290]
movsd xmm0, qword [esp + 0x4290]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4288], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x25b4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x25b4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x25bc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x25b8], eax
call fcn.00434890
mov ecx, dword [esp + 0x25b8]
mov dl, al
mov eax, dword [esp + 0x25bc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417bd9
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x25a0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x25a0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x25a4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x25a4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x25a8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x25a8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417bd7
mov dword [esp + 0x429c], 0xa
jmp 0x417d06
jmp 0x417bd9
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2594], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2594]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x259c], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2598], eax
call fcn.00434890
mov ecx, dword [esp + 0x2598]
mov dl, al
mov eax, dword [esp + 0x259c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417d04
movsd xmm0, qword [esp + 0x4288]
movsd qword [esp + 0x2588], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2580], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2580]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2590], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x2584], eax
call fcn.00434890
mov ecx, dword [esp + 0x2584]
movsd xmm0, qword [esp + 0x2588]
mov dl, al
mov eax, dword [esp + 0x2590]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x429c], eax
jmp 0x417d06
ud2
mov eax, dword [esp + 0x25ac]
mov ecx, dword [esp + 0x25b0]
and ecx, dword [esp + 0x429c]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
mov byte [eax + ecx], dl
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2574], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2574]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x257c], eax
call fcn.00434880
movsx eax, al
shl eax, 3
mov dword [esp + 0x2578], eax
call fcn.00434890
mov ecx, dword [esp + 0x2578]
mov dl, al
mov eax, dword [esp + 0x257c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x418318
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2564], eax
mov eax, dword [esp + 0x4220]
add eax, 0xffffffdf
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4278], xmm0
xor eax, eax
je 0x417de0
add dl, dh
movups xmm0, xmmword [esp + 0x4278]
movsd xmm0, qword [esp + 0x4278]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4270], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2568], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2568]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2570], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x256c], eax
call fcn.00434890
mov ecx, dword [esp + 0x256c]
mov dl, al
mov eax, dword [esp + 0x2570]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417f10
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2558], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2558]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x255c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x255c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2560], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2560]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x417f0e
mov dword [esp + 0x4284], 0xa
jmp 0x41803d
jmp 0x417f10
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x254c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x254c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2554], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2550], eax
call fcn.00434890
mov ecx, dword [esp + 0x2550]
mov dl, al
mov eax, dword [esp + 0x2554]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41803b
movsd xmm0, qword [esp + 0x4270]
movsd qword [esp + 0x2540], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2538], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2538]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2548], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x253c], eax
call fcn.00434890
mov ecx, dword [esp + 0x253c]
movsd xmm0, qword [esp + 0x2540]
mov dl, al
mov eax, dword [esp + 0x2548]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4284], eax
jmp 0x41803d
ud2
mov eax, dword [esp + 0x2564]
movsx ecx, byte [esp + 0x4284]
add eax, ecx
mov dword [esp + 0x2524], eax
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2528], eax
mov eax, dword [esp + 0x4220]
add eax, 0xffffffdf
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4260], xmm0
xor eax, eax
je 0x41808a
add dl, dh
movups xmm0, xmmword [esp + 0x4260]
movsd xmm0, qword [esp + 0x4260]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4258], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x252c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x252c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2534], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2530], eax
call fcn.00434890
mov ecx, dword [esp + 0x2530]
mov dl, al
mov eax, dword [esp + 0x2534]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4181ba
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2518], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2518]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x251c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x251c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2520], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2520]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4181b8
mov dword [esp + 0x426c], 0xa
jmp 0x4182e7
jmp 0x4181ba
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x250c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x250c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2514], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2510], eax
call fcn.00434890
mov ecx, dword [esp + 0x2510]
mov dl, al
mov eax, dword [esp + 0x2514]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4182e5
movsd xmm0, qword [esp + 0x4258]
movsd qword [esp + 0x2500], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x24f8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x24f8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2508], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x24fc], eax
call fcn.00434890
mov ecx, dword [esp + 0x24fc]
movsd xmm0, qword [esp + 0x2500]
mov dl, al
mov eax, dword [esp + 0x2508]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x426c], eax
jmp 0x4182e7
ud2
mov eax, dword [esp + 0x2524]
mov ecx, dword [esp + 0x2528]
mov edx, dword [esp + 0x426c]
movsx edx, dl
and ecx, edx
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
mov byte [eax + ecx], dl
jmp 0x41831a
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x24ec], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x24ec]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x24f0], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x24f0]
movsx ecx, cl
shl ecx, 2
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x24f4], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x24f4]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4188ed
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x24dc], eax
mov dword [esp + 0x424c], 0xc03d0000
mov dword [esp + 0x4248], 0
xor eax, eax
je 0x4183bc
add dl, dh
movups xmm0, xmmword [esp + 0x4248]
movsd xmm0, qword [esp + 0x4248]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4240], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x24e0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x24e0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x24e8], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x24e4], eax
call fcn.00434890
mov ecx, dword [esp + 0x24e4]
mov dl, al
mov eax, dword [esp + 0x24e8]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4184ec
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x24d0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x24d0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x24d4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x24d4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x24d8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x24d8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4184ea
mov dword [esp + 0x4254], 0xa
jmp 0x418619
jmp 0x4184ec
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x24c4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x24c4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x24cc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x24c8], eax
call fcn.00434890
mov ecx, dword [esp + 0x24c8]
mov dl, al
mov eax, dword [esp + 0x24cc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x418617
movsd xmm0, qword [esp + 0x4240]
movsd qword [esp + 0x24b8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x24b0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x24b0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x24c0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x24b4], eax
call fcn.00434890
mov ecx, dword [esp + 0x24b4]
movsd xmm0, qword [esp + 0x24b8]
mov dl, al
mov eax, dword [esp + 0x24c0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4254], eax
jmp 0x418619
ud2
mov eax, dword [esp + 0x24dc]
mov ecx, dword [esp + 0x4254]
add eax, ecx
mov dword [esp + 0x249c], eax
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x24a0], eax
mov dword [esp + 0x4234], 0xc03d0000
mov dword [esp + 0x4230], 0
xor eax, eax
je 0x418664
add dl, dh
movups xmm0, xmmword [esp + 0x4230]
movsd xmm0, qword [esp + 0x4230]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4228], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x24a4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x24a4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x24ac], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x24a8], eax
call fcn.00434890
mov ecx, dword [esp + 0x24a8]
mov dl, al
mov eax, dword [esp + 0x24ac]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x418794
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2490], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2490]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2494], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2494]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2498], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2498]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x418792
mov dword [esp + 0x423c], 0xa
jmp 0x4188c1
jmp 0x418794
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2484], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2484]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x248c], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2488], eax
call fcn.00434890
mov ecx, dword [esp + 0x2488]
mov dl, al
mov eax, dword [esp + 0x248c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4188bf
movsd xmm0, qword [esp + 0x4228]
movsd qword [esp + 0x2478], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2470], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2470]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2480], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x2474], eax
call fcn.00434890
mov ecx, dword [esp + 0x2474]
movsd xmm0, qword [esp + 0x2478]
mov dl, al
mov eax, dword [esp + 0x2480]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x423c], eax
jmp 0x4188c1
ud2
mov eax, dword [esp + 0x249c]
mov ecx, dword [esp + 0x24a0]
and ecx, dword [esp + 0x423c]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4224]
mov ecx, dword [esp + 0x4220]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x4220]
add eax, 1
mov dword [esp + 0x4220], eax
jmp 0x416b30
jmp 0x418905
mov ecx, dword [esp + 0x2728]
mov eax, dword [esp + 0x272c]
mov byte [eax], 1
add eax, 1
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__stricmp]
cmp eax, 0
sete al
mov byte [esp + 0x2733], al
mov al, byte [esp + 0x2733]
test al, 1
jne 0x418943
jmp 0x418d73
mov eax, dword [esp + 0x2ac8]
lea ecx, [0x401e10]
mov dword [eax], ecx
lea ecx, [esp + 0x2a0b]
lea eax, [esp + 0x2a0a]
mov dword [esp], eax
call fcn.004347e0
sub esp, 4
lea eax, [esp + 0x2a1b]
mov dword [esp + 0x2c84], eax
lea eax, [esp + 0x2a0b]
mov dword [esp + 0x2c80], eax
lea eax, [esp + 0x3bcc]
mov dword [esp + 0x3bd4], eax
mov eax, dword [esp + 0x3bd4]
mov dword [esp + 0x3c30], 0x30
mov ecx, dword [esp + 0x3c30]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3c2c], ecx
mov ecx, dword [esp + 0x3c2c]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3bcc]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3bc0]
mov dword [esp + 0x3be4], ecx
mov dword [esp + 0x3be0], eax
mov eax, dword [esp + 0x3be4]
mov ecx, dword [esp + 0x3be0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3be0]
mov dword [esp + 0x3c34], ecx
mov ecx, dword [esp + 0x3c34]
mov edx, dword [esp + 0x3c34]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3bd8], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3bdc], ecx
mov ecx, dword [esp + 0x3be0]
add ecx, dword [esp + 0x3bd8]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3bdc]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3bc0]
mov dword [esp + 0x3be8], eax
mov ecx, dword [esp + 0x3be8]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x418bfa
lea eax, [esp + 0x3bc0]
mov dword [esp + 0x3bec], eax
mov eax, dword [esp + 0x3bec]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3bbc], eax
mov eax, dword [esp + 0x3bbc]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3bbc], ecx
cmp eax, 0
je 0x418bf8
mov eax, dword [esp + 0x3bbc]
lea ecx, [esp + 0x3bc0]
mov dword [esp + 0x3c04], ecx
mov dword [esp + 0x3c00], eax
mov eax, dword [esp + 0x3c04]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3c00]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3c0c], 0x96744fef
mov dword [esp + 0x3c08], 0x837d83b
mov eax, dword [esp + 0x3c0c]
mov dword [esp + 0x3bfc], ecx
mov dword [esp + 0x3bf8], eax
mov eax, dword [esp + 0x3bf8]
mov dword [esp + 0x3bf4], eax
mov eax, dword [esp + 0x3bfc]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3bfc], ecx
mov al, byte [eax]
mov byte [esp + 0x3bf3], al
cmp byte [esp + 0x3bf3], 0
je 0x418bcb
mov ecx, dword [esp + 0x3bf4]
mov al, byte [esp + 0x3bf3]
mov dword [esp + 0x3c3c], ecx
mov byte [esp + 0x3c3b], al
mov eax, dword [esp + 0x3c3c]
mov dword [esp + 0x246c], eax
movsx eax, byte [esp + 0x3c3b]
cmp eax, 0x41
jl 0x418b9a
movsx eax, byte [esp + 0x3c3b]
cmp eax, 0x5a
jg 0x418b9a
movsx eax, byte [esp + 0x3c3b]
or eax, 0x20
mov dword [esp + 0x2468], eax
jmp 0x418ba9
movsx eax, byte [esp + 0x3c3b]
mov dword [esp + 0x2468], eax
mov eax, dword [esp + 0x246c]
mov ecx, dword [esp + 0x2468]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3bf4], eax
jmp 0x418b18
mov eax, dword [esp + 0x3bf4]
mov dword [esp + 0x3c14], 0x96744fef
mov dword [esp + 0x3c10], 0x837d83b
mov ecx, dword [esp + 0x3c10]
cmp eax, ecx
je 0x418c28
jmp 0x418a88
jmp 0x418bfa
lea eax, [esp + 0x3bcc]
mov dword [esp + 0x3c28], eax
mov eax, dword [esp + 0x3c28]
mov ecx, dword [eax]
mov dword [esp + 0x3c40], ecx
mov ecx, dword [esp + 0x3c40]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4189c7
mov eax, dword [esp + 0x3bbc]
lea ecx, [esp + 0x3bc0]
mov dword [esp + 0x3c24], ecx
mov dword [esp + 0x3c20], eax
mov eax, dword [esp + 0x3c24]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3c1c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3c18], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3c1c]
mov edx, dword [esp + 0x3c18]
mov esi, dword [esp + 0x3c20]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3bd0], eax
mov eax, dword [esp + 0x3bd0]
mov dword [esp + 0x2460], eax
mov eax, dword [esp + 0x2c80]
mov dword [esp + 0x2ee8], eax
mov eax, dword [esp + 0x2ee8]
mov dword [esp + 0x2f84], eax
mov eax, dword [esp + 0x2f84]
mov dword [esp + 0x2464], eax
mov dword [esp + 0x2fe0], eax
mov eax, dword [esp + 0x2fe0]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x418d58
mov eax, dword [esp + 0x2464]
mov dword [esp + 0x30bc], eax
mov dword [esp + 0x30b8], eax
mov eax, dword [esp + 0x30bc]
mov dword [esp + 0x245c], eax
mov dword [esp + 0x30b4], 0
cmp dword [esp + 0x30b4], 0x10
jge 0x418d56
mov eax, dword [esp + 0x245c]
mov ecx, dword [esp + 0x30b8]
mov edx, dword [esp + 0x30b4]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x30b4]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x30b4]
add eax, 1
mov dword [esp + 0x30b4], eax
jmp 0x418d0b
jmp 0x418d58
mov eax, dword [esp + 0x2460]
mov ecx, dword [esp + 0x2464]
mov dword [esp], ecx
call eax
sub esp, 4
jmp 0x43341a
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2450], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2450]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2454], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2454]
movsx ecx, cl
imul ecx, ecx, 6
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2458], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2458]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41934f
mov dword [esp + 0x2e2c], 0x40140000
mov dword [esp + 0x2e28], 0
xor eax, eax
je 0x418dfc
add dl, dh
movups xmm0, xmmword [esp + 0x2e28]
movsd xmm0, qword [esp + 0x2e28]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2e20], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2444], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2444]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x244c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2448], eax
call fcn.00434890
mov ecx, dword [esp + 0x2448]
mov dl, al
mov eax, dword [esp + 0x244c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x418f2c
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2438], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2438]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x243c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x243c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2440], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2440]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x418f2a
mov dword [esp + 0x2e34], 0xa
jmp 0x419059
jmp 0x418f2c
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x242c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x242c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2434], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2430], eax
call fcn.00434890
mov ecx, dword [esp + 0x2430]
mov dl, al
mov eax, dword [esp + 0x2434]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419057
movsd xmm0, qword [esp + 0x2e20]
movsd qword [esp + 0x2420], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2418], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2418]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2428], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x241c], eax
call fcn.00434890
mov ecx, dword [esp + 0x241c]
movsd xmm0, qword [esp + 0x2420]
mov dl, al
mov eax, dword [esp + 0x2428]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2e34], eax
jmp 0x419059
ud2
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x240c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x240c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2414], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 5
mov dword [esp + 0x2410], eax
call fcn.00434890
mov ecx, dword [esp + 0x2410]
mov dl, al
mov eax, dword [esp + 0x2414]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41934a
mov dword [esp + 0x2e14], 0x40240000
mov dword [esp + 0x2e10], 0
xor eax, eax
je 0x4190ed
add dl, dh
movups xmm0, xmmword [esp + 0x2e10]
movsd xmm0, qword [esp + 0x2e10]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2e08], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2400], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2400]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2408], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2404], eax
call fcn.00434890
mov ecx, dword [esp + 0x2404]
mov dl, al
mov eax, dword [esp + 0x2408]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41921d
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x23f4], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x23f4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x23f8], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x23f8]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x23fc], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x23fc]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41921b
mov dword [esp + 0x2e1c], 0xa
jmp 0x41934a
jmp 0x41921d
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x23e8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x23e8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x23f0], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x23ec], eax
call fcn.00434890
mov ecx, dword [esp + 0x23ec]
mov dl, al
mov eax, dword [esp + 0x23f0]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419348
movsd xmm0, qword [esp + 0x2e08]
movsd qword [esp + 0x23d8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x23d0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x23d0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x23e4], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x23d4], eax
call fcn.00434890
mov ecx, dword [esp + 0x23d4]
movsd xmm0, qword [esp + 0x23d8]
mov dl, al
mov eax, dword [esp + 0x23e4]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2e1c], eax
jmp 0x41934a
ud2
jmp 0x433418
xor eax, eax
cmp dword [0x4a4f60], 0
mov byte [esp + 0x23cf], al
je 0x41b1de
mov eax, dword [esp + 0x2a58]
mov dword [esp + 0x23c4], eax
lea ecx, [esp + 0x29f9]
lea eax, [esp + 0x29f8]
mov dword [esp], eax
call fcn.004348a0
sub esp, 4
lea eax, [esp + 0x29f9]
mov dword [esp + 0x2e38], eax
mov eax, dword [esp + 0x2e38]
mov dword [esp + 0x4314], eax
mov eax, dword [esp + 0x4314]
mov dword [esp + 0x23c8], eax
test byte [eax], 1
jne 0x41b1b0
mov eax, dword [esp + 0x23c8]
add eax, 1
mov dword [esp + 0x431c], eax
mov dword [esp + 0x4318], 0
mov eax, dword [esp + 0x4318]
cmp eax, 0x10
jae 0x41b1ae
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x23b8], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x23b8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x23bc], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x23bc]
movsx ecx, cl
imul ecx, ecx, 7
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x23c0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x23c0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4199be
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x23a8], eax
mov dword [esp + 0x4404], 0xc03d0000
mov dword [esp + 0x4400], 0
xor eax, eax
je 0x41948d
add dl, dh
movups xmm0, xmmword [esp + 0x4400]
movsd xmm0, qword [esp + 0x4400]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x43f8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x23ac], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x23ac]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x23b4], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x23b0], eax
call fcn.00434890
mov ecx, dword [esp + 0x23b0]
mov dl, al
mov eax, dword [esp + 0x23b4]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4195bd
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x239c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x239c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x23a0], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x23a0]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x23a4], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x23a4]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4195bb
mov dword [esp + 0x4408], 0xa
jmp 0x4196ea
jmp 0x4195bd
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2390], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2390]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2398], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2394], eax
call fcn.00434890
mov ecx, dword [esp + 0x2394]
mov dl, al
mov eax, dword [esp + 0x2398]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4196e8
movsd xmm0, qword [esp + 0x43f8]
movsd qword [esp + 0x2380], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2378], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2378]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x238c], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x237c], eax
call fcn.00434890
mov ecx, dword [esp + 0x237c]
movsd xmm0, qword [esp + 0x2380]
mov dl, al
mov eax, dword [esp + 0x238c]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4408], eax
jmp 0x4196ea
ud2
mov eax, dword [esp + 0x23a8]
mov ecx, dword [esp + 0x4408]
add eax, ecx
mov dword [esp + 0x2364], eax
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2368], eax
mov dword [esp + 0x43ec], 0xc03d0000
mov dword [esp + 0x43e8], 0
xor eax, eax
je 0x419735
add dl, dh
movups xmm0, xmmword [esp + 0x43e8]
movsd xmm0, qword [esp + 0x43e8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x43e0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x236c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x236c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2374], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2370], eax
call fcn.00434890
mov ecx, dword [esp + 0x2370]
mov dl, al
mov eax, dword [esp + 0x2374]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419865
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2358], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2358]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x235c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x235c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2360], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2360]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419863
mov dword [esp + 0x43f4], 0xa
jmp 0x419992
jmp 0x419865
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x234c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x234c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2354], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2350], eax
call fcn.00434890
mov ecx, dword [esp + 0x2350]
mov dl, al
mov eax, dword [esp + 0x2354]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419990
movsd xmm0, qword [esp + 0x43e0]
movsd qword [esp + 0x2340], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2338], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2338]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2348], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x233c], eax
call fcn.00434890
mov ecx, dword [esp + 0x233c]
movsd xmm0, qword [esp + 0x2340]
mov dl, al
mov eax, dword [esp + 0x2348]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x43f4], eax
jmp 0x419992
ud2
mov eax, dword [esp + 0x2364]
mov ecx, dword [esp + 0x2368]
and ecx, dword [esp + 0x43f4]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
mov byte [eax + ecx], dl
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x232c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x232c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2334], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 9
mov dword [esp + 0x2330], eax
call fcn.00434890
mov ecx, dword [esp + 0x2330]
mov dl, al
mov eax, dword [esp + 0x2334]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41abc5
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2320], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2320]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2324], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2324]
movsx ecx, cl
shl ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2328], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2328]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a00a
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2310], eax
mov dword [esp + 0x43d4], 0xc03c0000
mov dword [esp + 0x43d0], 0
xor eax, eax
je 0x419ad9
add dl, dh
movups xmm0, xmmword [esp + 0x43d0]
movsd xmm0, qword [esp + 0x43d0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x43c8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2314], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2314]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x231c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2318], eax
call fcn.00434890
mov ecx, dword [esp + 0x2318]
mov dl, al
mov eax, dword [esp + 0x231c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419c09
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2304], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2304]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2308], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2308]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x230c], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x230c]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419c07
mov dword [esp + 0x43dc], 0xa
jmp 0x419d36
jmp 0x419c09
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x22f8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x22f8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2300], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x22fc], eax
call fcn.00434890
mov ecx, dword [esp + 0x22fc]
mov dl, al
mov eax, dword [esp + 0x2300]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419d34
movsd xmm0, qword [esp + 0x43c8]
movsd qword [esp + 0x22e8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x22e0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x22e0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x22f4], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x22e4], eax
call fcn.00434890
mov ecx, dword [esp + 0x22e4]
movsd xmm0, qword [esp + 0x22e8]
mov dl, al
mov eax, dword [esp + 0x22f4]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x43dc], eax
jmp 0x419d36
ud2
mov eax, dword [esp + 0x2310]
mov ecx, dword [esp + 0x43dc]
add eax, ecx
mov dword [esp + 0x22cc], eax
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x22d0], eax
mov dword [esp + 0x43bc], 0xc03c0000
mov dword [esp + 0x43b8], 0
xor eax, eax
je 0x419d81
add dl, dh
movups xmm0, xmmword [esp + 0x43b8]
movsd xmm0, qword [esp + 0x43b8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x43b0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x22d4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x22d4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x22dc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x22d8], eax
call fcn.00434890
mov ecx, dword [esp + 0x22d8]
mov dl, al
mov eax, dword [esp + 0x22dc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419eb1
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x22c0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x22c0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x22c4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x22c4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x22c8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x22c8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419eaf
mov dword [esp + 0x43c4], 0xa
jmp 0x419fde
jmp 0x419eb1
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x22b4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x22b4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x22bc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x22b8], eax
call fcn.00434890
mov ecx, dword [esp + 0x22b8]
mov dl, al
mov eax, dword [esp + 0x22bc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x419fdc
movsd xmm0, qword [esp + 0x43b0]
movsd qword [esp + 0x22a8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x22a0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x22a0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x22b0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x22a4], eax
call fcn.00434890
mov ecx, dword [esp + 0x22a4]
movsd xmm0, qword [esp + 0x22a8]
mov dl, al
mov eax, dword [esp + 0x22b0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x43c4], eax
jmp 0x419fde
ud2
mov eax, dword [esp + 0x22cc]
mov ecx, dword [esp + 0x22d0]
and ecx, dword [esp + 0x43c4]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
mov byte [eax + ecx], dl
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2294], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2294]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2298], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2298]
movsx ecx, cl
imul ecx, ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x229c], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x229c]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a5dd
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2284], eax
mov dword [esp + 0x43a4], 0xc03b0000
mov dword [esp + 0x43a0], 0
xor eax, eax
je 0x41a0ac
add dl, dh
movups xmm0, xmmword [esp + 0x43a0]
movsd xmm0, qword [esp + 0x43a0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4398], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2288], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2288]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2290], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x228c], eax
call fcn.00434890
mov ecx, dword [esp + 0x228c]
mov dl, al
mov eax, dword [esp + 0x2290]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a1dc
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2278], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2278]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x227c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x227c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2280], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2280]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a1da
mov dword [esp + 0x43ac], 0xa
jmp 0x41a309
jmp 0x41a1dc
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x226c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x226c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2274], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2270], eax
call fcn.00434890
mov ecx, dword [esp + 0x2270]
mov dl, al
mov eax, dword [esp + 0x2274]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a307
movsd xmm0, qword [esp + 0x4398]
movsd qword [esp + 0x2260], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2258], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2258]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2268], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x225c], eax
call fcn.00434890
mov ecx, dword [esp + 0x225c]
movsd xmm0, qword [esp + 0x2260]
mov dl, al
mov eax, dword [esp + 0x2268]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x43ac], eax
jmp 0x41a309
ud2
mov eax, dword [esp + 0x2284]
mov ecx, dword [esp + 0x43ac]
add eax, ecx
mov dword [esp + 0x2244], eax
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2248], eax
mov dword [esp + 0x438c], 0xc03b0000
mov dword [esp + 0x4388], 0
xor eax, eax
je 0x41a354
add dl, dh
movups xmm0, xmmword [esp + 0x4388]
movsd xmm0, qword [esp + 0x4388]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4380], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x224c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x224c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2254], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2250], eax
call fcn.00434890
mov ecx, dword [esp + 0x2250]
mov dl, al
mov eax, dword [esp + 0x2254]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a484
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2238], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2238]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x223c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x223c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2240], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2240]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a482
mov dword [esp + 0x4394], 0xa
jmp 0x41a5b1
jmp 0x41a484
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x222c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x222c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2234], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2230], eax
call fcn.00434890
mov ecx, dword [esp + 0x2230]
mov dl, al
mov eax, dword [esp + 0x2234]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a5af
movsd xmm0, qword [esp + 0x4380]
movsd qword [esp + 0x2220], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2218], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2218]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2228], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x221c], eax
call fcn.00434890
mov ecx, dword [esp + 0x221c]
movsd xmm0, qword [esp + 0x2220]
mov dl, al
mov eax, dword [esp + 0x2228]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4394], eax
jmp 0x41a5b1
ud2
mov eax, dword [esp + 0x2244]
mov ecx, dword [esp + 0x2248]
and ecx, dword [esp + 0x4394]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
mov byte [eax + ecx], dl
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x220c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x220c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2214], eax
call fcn.00434880
movsx eax, al
shl eax, 3
mov dword [esp + 0x2210], eax
call fcn.00434890
mov ecx, dword [esp + 0x2210]
mov dl, al
mov eax, dword [esp + 0x2214]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41abc3
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x21fc], eax
mov eax, dword [esp + 0x4318]
add eax, 0xffffffe2
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4370], xmm0
xor eax, eax
je 0x41a68b
add dl, dh
movups xmm0, xmmword [esp + 0x4370]
movsd xmm0, qword [esp + 0x4370]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4368], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2200], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2200]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2208], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2204], eax
call fcn.00434890
mov ecx, dword [esp + 0x2204]
mov dl, al
mov eax, dword [esp + 0x2208]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a7bb
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x21f0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x21f0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x21f4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x21f4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x21f8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x21f8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a7b9
mov dword [esp + 0x437c], 0xa
jmp 0x41a8e8
jmp 0x41a7bb
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x21e4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x21e4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x21ec], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x21e8], eax
call fcn.00434890
mov ecx, dword [esp + 0x21e8]
mov dl, al
mov eax, dword [esp + 0x21ec]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41a8e6
movsd xmm0, qword [esp + 0x4368]
movsd qword [esp + 0x21d8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x21d0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x21d0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x21e0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x21d4], eax
call fcn.00434890
mov ecx, dword [esp + 0x21d4]
movsd xmm0, qword [esp + 0x21d8]
mov dl, al
mov eax, dword [esp + 0x21e0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x437c], eax
jmp 0x41a8e8
ud2
mov eax, dword [esp + 0x21fc]
movsx ecx, byte [esp + 0x437c]
add eax, ecx
mov dword [esp + 0x21bc], eax
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x21c0], eax
mov eax, dword [esp + 0x4318]
add eax, 0xffffffe2
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4358], xmm0
xor eax, eax
je 0x41a935
add dl, dh
movups xmm0, xmmword [esp + 0x4358]
movsd xmm0, qword [esp + 0x4358]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4350], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x21c4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x21c4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x21cc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x21c8], eax
call fcn.00434890
mov ecx, dword [esp + 0x21c8]
mov dl, al
mov eax, dword [esp + 0x21cc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41aa65
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x21b0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x21b0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x21b4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x21b4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x21b8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x21b8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41aa63
mov dword [esp + 0x4364], 0xa
jmp 0x41ab92
jmp 0x41aa65
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x21a4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x21a4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x21ac], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x21a8], eax
call fcn.00434890
mov ecx, dword [esp + 0x21a8]
mov dl, al
mov eax, dword [esp + 0x21ac]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ab90
movsd xmm0, qword [esp + 0x4350]
movsd qword [esp + 0x2198], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2190], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2190]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x21a0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x2194], eax
call fcn.00434890
mov ecx, dword [esp + 0x2194]
movsd xmm0, qword [esp + 0x2198]
mov dl, al
mov eax, dword [esp + 0x21a0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4364], eax
jmp 0x41ab92
ud2
mov eax, dword [esp + 0x21bc]
mov ecx, dword [esp + 0x21c0]
mov edx, dword [esp + 0x4364]
movsx edx, dl
and ecx, edx
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
mov byte [eax + ecx], dl
jmp 0x41abc5
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2184], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2184]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2188], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2188]
movsx ecx, cl
shl ecx, 2
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x218c], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x218c]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41b198
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2174], eax
mov dword [esp + 0x4344], 0xc03a0000
mov dword [esp + 0x4340], 0
xor eax, eax
je 0x41ac67
add dl, dh
movups xmm0, xmmword [esp + 0x4340]
movsd xmm0, qword [esp + 0x4340]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4338], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2178], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2178]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2180], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x217c], eax
call fcn.00434890
mov ecx, dword [esp + 0x217c]
mov dl, al
mov eax, dword [esp + 0x2180]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ad97
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2168], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2168]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x216c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x216c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2170], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2170]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ad95
mov dword [esp + 0x434c], 0xa
jmp 0x41aec4
jmp 0x41ad97
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x215c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x215c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2164], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2160], eax
call fcn.00434890
mov ecx, dword [esp + 0x2160]
mov dl, al
mov eax, dword [esp + 0x2164]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41aec2
movsd xmm0, qword [esp + 0x4338]
movsd qword [esp + 0x2150], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2148], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2148]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2158], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x214c], eax
call fcn.00434890
mov ecx, dword [esp + 0x214c]
movsd xmm0, qword [esp + 0x2150]
mov dl, al
mov eax, dword [esp + 0x2158]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x434c], eax
jmp 0x41aec4
ud2
mov eax, dword [esp + 0x2174]
mov ecx, dword [esp + 0x434c]
add eax, ecx
mov dword [esp + 0x2134], eax
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2138], eax
mov dword [esp + 0x432c], 0xc03a0000
mov dword [esp + 0x4328], 0
xor eax, eax
je 0x41af0f
add dl, dh
movups xmm0, xmmword [esp + 0x4328]
movsd xmm0, qword [esp + 0x4328]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4320], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x213c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x213c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2144], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2140], eax
call fcn.00434890
mov ecx, dword [esp + 0x2140]
mov dl, al
mov eax, dword [esp + 0x2144]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41b03f
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2128], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2128]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x212c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x212c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2130], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2130]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41b03d
mov dword [esp + 0x4334], 0xa
jmp 0x41b16c
jmp 0x41b03f
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x211c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x211c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2124], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2120], eax
call fcn.00434890
mov ecx, dword [esp + 0x2120]
mov dl, al
mov eax, dword [esp + 0x2124]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41b16a
movsd xmm0, qword [esp + 0x4320]
movsd qword [esp + 0x2110], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2108], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2108]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2118], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x210c], eax
call fcn.00434890
mov ecx, dword [esp + 0x210c]
movsd xmm0, qword [esp + 0x2110]
mov dl, al
mov eax, dword [esp + 0x2118]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4334], eax
jmp 0x41b16c
ud2
mov eax, dword [esp + 0x2134]
mov ecx, dword [esp + 0x2138]
and ecx, dword [esp + 0x4334]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x431c]
mov ecx, dword [esp + 0x4318]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x4318]
add eax, 1
mov dword [esp + 0x4318], eax
jmp 0x4193db
jmp 0x41b1b0
mov ecx, dword [esp + 0x23c4]
mov eax, dword [esp + 0x23c8]
mov byte [eax], 1
add eax, 1
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__stricmp]
cmp eax, 0
sete al
mov byte [esp + 0x23cf], al
mov al, byte [esp + 0x23cf]
test al, 1
jne 0x41b1ee
jmp 0x41b61e
mov eax, dword [esp + 0x2ac8]
lea ecx, [0x401df0]
mov dword [eax], ecx
lea ecx, [esp + 0x29e7]
lea eax, [esp + 0x29e6]
mov dword [esp], eax
call fcn.004348f0
sub esp, 4
lea eax, [esp + 0x29f7]
mov dword [esp + 0x2e40], eax
lea eax, [esp + 0x29e7]
mov dword [esp + 0x2e3c], eax
lea eax, [esp + 0x3c54]
mov dword [esp + 0x3c5c], eax
mov eax, dword [esp + 0x3c5c]
mov dword [esp + 0x3cb8], 0x30
mov ecx, dword [esp + 0x3cb8]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3cb4], ecx
mov ecx, dword [esp + 0x3cb4]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3c54]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3c48]
mov dword [esp + 0x3c6c], ecx
mov dword [esp + 0x3c68], eax
mov eax, dword [esp + 0x3c6c]
mov ecx, dword [esp + 0x3c68]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3c68]
mov dword [esp + 0x3cbc], ecx
mov ecx, dword [esp + 0x3cbc]
mov edx, dword [esp + 0x3cbc]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3c60], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3c64], ecx
mov ecx, dword [esp + 0x3c68]
add ecx, dword [esp + 0x3c60]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3c64]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3c48]
mov dword [esp + 0x3c70], eax
mov ecx, dword [esp + 0x3c70]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x41b4a5
lea eax, [esp + 0x3c48]
mov dword [esp + 0x3c74], eax
mov eax, dword [esp + 0x3c74]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3c44], eax
mov eax, dword [esp + 0x3c44]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3c44], ecx
cmp eax, 0
je 0x41b4a3
mov eax, dword [esp + 0x3c44]
lea ecx, [esp + 0x3c48]
mov dword [esp + 0x3c8c], ecx
mov dword [esp + 0x3c88], eax
mov eax, dword [esp + 0x3c8c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3c88]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3c94], 0x615b5a0e
mov dword [esp + 0x3c90], 0x891cb832
mov eax, dword [esp + 0x3c94]
mov dword [esp + 0x3c84], ecx
mov dword [esp + 0x3c80], eax
mov eax, dword [esp + 0x3c80]
mov dword [esp + 0x3c7c], eax
mov eax, dword [esp + 0x3c84]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3c84], ecx
mov al, byte [eax]
mov byte [esp + 0x3c7b], al
cmp byte [esp + 0x3c7b], 0
je 0x41b476
mov ecx, dword [esp + 0x3c7c]
mov al, byte [esp + 0x3c7b]
mov dword [esp + 0x3cc4], ecx
mov byte [esp + 0x3cc3], al
mov eax, dword [esp + 0x3cc4]
mov dword [esp + 0x2104], eax
movsx eax, byte [esp + 0x3cc3]
cmp eax, 0x41
jl 0x41b445
movsx eax, byte [esp + 0x3cc3]
cmp eax, 0x5a
jg 0x41b445
movsx eax, byte [esp + 0x3cc3]
or eax, 0x20
mov dword [esp + 0x2100], eax
jmp 0x41b454
movsx eax, byte [esp + 0x3cc3]
mov dword [esp + 0x2100], eax
mov eax, dword [esp + 0x2104]
mov ecx, dword [esp + 0x2100]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3c7c], eax
jmp 0x41b3c3
mov eax, dword [esp + 0x3c7c]
mov dword [esp + 0x3c9c], 0x615b5a0e
mov dword [esp + 0x3c98], 0x891cb832
mov ecx, dword [esp + 0x3c98]
cmp eax, ecx
je 0x41b4d3
jmp 0x41b333
jmp 0x41b4a5
lea eax, [esp + 0x3c54]
mov dword [esp + 0x3cb0], eax
mov eax, dword [esp + 0x3cb0]
mov ecx, dword [eax]
mov dword [esp + 0x3cc8], ecx
mov ecx, dword [esp + 0x3cc8]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x41b272
mov eax, dword [esp + 0x3c44]
lea ecx, [esp + 0x3c48]
mov dword [esp + 0x3cac], ecx
mov dword [esp + 0x3ca8], eax
mov eax, dword [esp + 0x3cac]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3ca4], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3ca0], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3ca4]
mov edx, dword [esp + 0x3ca0]
mov esi, dword [esp + 0x3ca8]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3c58], eax
mov eax, dword [esp + 0x3c58]
mov dword [esp + 0x20f8], eax
mov eax, dword [esp + 0x2e3c]
mov dword [esp + 0x2ee4], eax
mov eax, dword [esp + 0x2ee4]
mov dword [esp + 0x2f88], eax
mov eax, dword [esp + 0x2f88]
mov dword [esp + 0x20fc], eax
mov dword [esp + 0x2fdc], eax
mov eax, dword [esp + 0x2fdc]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x41b603
mov eax, dword [esp + 0x20fc]
mov dword [esp + 0x30b0], eax
mov dword [esp + 0x30ac], eax
mov eax, dword [esp + 0x30b0]
mov dword [esp + 0x20f4], eax
mov dword [esp + 0x30a8], 0
cmp dword [esp + 0x30a8], 0x10
jge 0x41b601
mov eax, dword [esp + 0x20f4]
mov ecx, dword [esp + 0x30ac]
mov edx, dword [esp + 0x30a8]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x30a8]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x30a8]
add eax, 1
mov dword [esp + 0x30a8], eax
jmp 0x41b5b6
jmp 0x41b603
mov eax, dword [esp + 0x20f8]
mov ecx, dword [esp + 0x20fc]
mov dword [esp], ecx
call eax
sub esp, 4
jmp 0x433416
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x20e8], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x20e8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x20ec], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x20ec]
movsx ecx, cl
shl ecx, 2
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x20f0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x20f0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41bbfa
mov dword [esp + 0x2dfc], 0x40080000
mov dword [esp + 0x2df8], 0
xor eax, eax
je 0x41b6a7
add dl, dh
movups xmm0, xmmword [esp + 0x2df8]
movsd xmm0, qword [esp + 0x2df8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2df0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x20dc], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x20dc]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x20e4], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x20e0], eax
call fcn.00434890
mov ecx, dword [esp + 0x20e0]
mov dl, al
mov eax, dword [esp + 0x20e4]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41b7d7
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x20d0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x20d0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x20d4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x20d4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x20d8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x20d8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41b7d5
mov dword [esp + 0x2e04], 0xa
jmp 0x41b904
jmp 0x41b7d7
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x20c4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x20c4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x20cc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x20c8], eax
call fcn.00434890
mov ecx, dword [esp + 0x20c8]
mov dl, al
mov eax, dword [esp + 0x20cc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41b902
movsd xmm0, qword [esp + 0x2df0]
movsd qword [esp + 0x20b8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x20b0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x20b0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x20c0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x20b4], eax
call fcn.00434890
mov ecx, dword [esp + 0x20b4]
movsd xmm0, qword [esp + 0x20b8]
mov dl, al
mov eax, dword [esp + 0x20c0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2e04], eax
jmp 0x41b904
ud2
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x20a4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x20a4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x20ac], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 3
mov dword [esp + 0x20a8], eax
call fcn.00434890
mov ecx, dword [esp + 0x20a8]
mov dl, al
mov eax, dword [esp + 0x20ac]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41bbf5
mov dword [esp + 0x2de4], 0x40200000
mov dword [esp + 0x2de0], 0
xor eax, eax
je 0x41b998
add dl, dh
movups xmm0, xmmword [esp + 0x2de0]
movsd xmm0, qword [esp + 0x2de0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2dd8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2098], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2098]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x20a0], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x209c], eax
call fcn.00434890
mov ecx, dword [esp + 0x209c]
mov dl, al
mov eax, dword [esp + 0x20a0]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41bac8
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x208c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x208c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2090], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2090]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2094], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2094]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41bac6
mov dword [esp + 0x2dec], 0xa
jmp 0x41bbf5
jmp 0x41bac8
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2080], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2080]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2088], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x2084], eax
call fcn.00434890
mov ecx, dword [esp + 0x2084]
mov dl, al
mov eax, dword [esp + 0x2088]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41bbf3
movsd xmm0, qword [esp + 0x2dd8]
movsd qword [esp + 0x2070], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2068], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2068]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x207c], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x206c], eax
call fcn.00434890
mov ecx, dword [esp + 0x206c]
movsd xmm0, qword [esp + 0x2070]
mov dl, al
mov eax, dword [esp + 0x207c]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2dec], eax
jmp 0x41bbf5
ud2
jmp 0x433414
xor eax, eax
cmp dword [0x4a4f60], 0
mov byte [esp + 0x2067], al
je 0x41da89
mov eax, dword [esp + 0x2a58]
mov dword [esp + 0x205c], eax
lea ecx, [esp + 0x29d6]
lea eax, [esp + 0x29d5]
mov dword [esp], eax
call fcn.00434950
sub esp, 4
lea eax, [esp + 0x29d6]
mov dword [esp + 0x2e44], eax
mov eax, dword [esp + 0x2e44]
mov dword [esp + 0x440c], eax
mov eax, dword [esp + 0x440c]
mov dword [esp + 0x2060], eax
test byte [eax], 1
jne 0x41da5b
mov eax, dword [esp + 0x2060]
add eax, 1
mov dword [esp + 0x4414], eax
mov dword [esp + 0x4410], 0
mov eax, dword [esp + 0x4410]
cmp eax, 0xf
jae 0x41da59
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2050], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2050]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2054], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2054]
movsx ecx, cl
imul ecx, ecx, 7
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x2058], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x2058]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c269
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2040], eax
mov dword [esp + 0x44fc], 0xc03a0000
mov dword [esp + 0x44f8], 0
xor eax, eax
je 0x41bd38
add dl, dh
movups xmm0, xmmword [esp + 0x44f8]
movsd xmm0, qword [esp + 0x44f8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x44f0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2044], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2044]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x204c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2048], eax
call fcn.00434890
mov ecx, dword [esp + 0x2048]
mov dl, al
mov eax, dword [esp + 0x204c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41be68
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x2034], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x2034]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2038], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x2038]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x203c], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x203c]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41be66
mov dword [esp + 0x4500], 0xa
jmp 0x41bf95
jmp 0x41be68
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2028], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2028]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2030], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x202c], eax
call fcn.00434890
mov ecx, dword [esp + 0x202c]
mov dl, al
mov eax, dword [esp + 0x2030]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41bf93
movsd xmm0, qword [esp + 0x44f0]
movsd qword [esp + 0x2018], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x2010], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2010]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x2024], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x2014], eax
call fcn.00434890
mov ecx, dword [esp + 0x2014]
movsd xmm0, qword [esp + 0x2018]
mov dl, al
mov eax, dword [esp + 0x2024]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4500], eax
jmp 0x41bf95
ud2
mov eax, dword [esp + 0x2040]
mov ecx, dword [esp + 0x4500]
add eax, ecx
mov dword [esp + 0x1ffc], eax
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x2000], eax
mov dword [esp + 0x44e4], 0xc03a0000
mov dword [esp + 0x44e0], 0
xor eax, eax
je 0x41bfe0
add dl, dh
movups xmm0, xmmword [esp + 0x44e0]
movsd xmm0, qword [esp + 0x44e0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x44d8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x2004], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x2004]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x200c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x2008], eax
call fcn.00434890
mov ecx, dword [esp + 0x2008]
mov dl, al
mov eax, dword [esp + 0x200c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c110
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1ff0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1ff0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ff4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1ff4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1ff8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1ff8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c10e
mov dword [esp + 0x44ec], 0xa
jmp 0x41c23d
jmp 0x41c110
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1fe4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1fe4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1fec], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1fe8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1fe8]
mov dl, al
mov eax, dword [esp + 0x1fec]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c23b
movsd xmm0, qword [esp + 0x44d8]
movsd qword [esp + 0x1fd8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1fd0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1fd0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1fe0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1fd4], eax
call fcn.00434890
mov ecx, dword [esp + 0x1fd4]
movsd xmm0, qword [esp + 0x1fd8]
mov dl, al
mov eax, dword [esp + 0x1fe0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x44ec], eax
jmp 0x41c23d
ud2
mov eax, dword [esp + 0x1ffc]
mov ecx, dword [esp + 0x2000]
and ecx, dword [esp + 0x44ec]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
mov byte [eax + ecx], dl
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1fc4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1fc4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1fcc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 9
mov dword [esp + 0x1fc8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1fc8]
mov dl, al
mov eax, dword [esp + 0x1fcc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d470
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1fb8], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1fb8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1fbc], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1fbc]
movsx ecx, cl
shl ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1fc0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1fc0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c8b5
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1fa8], eax
mov dword [esp + 0x44cc], 0xc0390000
mov dword [esp + 0x44c8], 0
xor eax, eax
je 0x41c384
add dl, dh
movups xmm0, xmmword [esp + 0x44c8]
movsd xmm0, qword [esp + 0x44c8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x44c0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1fac], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1fac]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1fb4], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1fb0], eax
call fcn.00434890
mov ecx, dword [esp + 0x1fb0]
mov dl, al
mov eax, dword [esp + 0x1fb4]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c4b4
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1f9c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1f9c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1fa0], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1fa0]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1fa4], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1fa4]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c4b2
mov dword [esp + 0x44d4], 0xa
jmp 0x41c5e1
jmp 0x41c4b4
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1f90], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1f90]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f98], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1f94], eax
call fcn.00434890
mov ecx, dword [esp + 0x1f94]
mov dl, al
mov eax, dword [esp + 0x1f98]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c5df
movsd xmm0, qword [esp + 0x44c0]
movsd qword [esp + 0x1f80], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1f78], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1f78]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f8c], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1f7c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1f7c]
movsd xmm0, qword [esp + 0x1f80]
mov dl, al
mov eax, dword [esp + 0x1f8c]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x44d4], eax
jmp 0x41c5e1
ud2
mov eax, dword [esp + 0x1fa8]
mov ecx, dword [esp + 0x44d4]
add eax, ecx
mov dword [esp + 0x1f64], eax
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1f68], eax
mov dword [esp + 0x44b4], 0xc0390000
mov dword [esp + 0x44b0], 0
xor eax, eax
je 0x41c62c
add dl, dh
movups xmm0, xmmword [esp + 0x44b0]
movsd xmm0, qword [esp + 0x44b0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x44a8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1f6c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1f6c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f74], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1f70], eax
call fcn.00434890
mov ecx, dword [esp + 0x1f70]
mov dl, al
mov eax, dword [esp + 0x1f74]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c75c
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1f58], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1f58]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f5c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1f5c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1f60], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1f60]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c75a
mov dword [esp + 0x44bc], 0xa
jmp 0x41c889
jmp 0x41c75c
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1f4c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1f4c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f54], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1f50], eax
call fcn.00434890
mov ecx, dword [esp + 0x1f50]
mov dl, al
mov eax, dword [esp + 0x1f54]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41c887
movsd xmm0, qword [esp + 0x44a8]
movsd qword [esp + 0x1f40], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1f38], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1f38]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f48], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1f3c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1f3c]
movsd xmm0, qword [esp + 0x1f40]
mov dl, al
mov eax, dword [esp + 0x1f48]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x44bc], eax
jmp 0x41c889
ud2
mov eax, dword [esp + 0x1f64]
mov ecx, dword [esp + 0x1f68]
and ecx, dword [esp + 0x44bc]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
mov byte [eax + ecx], dl
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1f2c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1f2c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f30], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1f30]
movsx ecx, cl
imul ecx, ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1f34], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1f34]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ce88
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1f1c], eax
mov dword [esp + 0x449c], 0xc0380000
mov dword [esp + 0x4498], 0
xor eax, eax
je 0x41c957
add dl, dh
movups xmm0, xmmword [esp + 0x4498]
movsd xmm0, qword [esp + 0x4498]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4490], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1f20], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1f20]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f28], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1f24], eax
call fcn.00434890
mov ecx, dword [esp + 0x1f24]
mov dl, al
mov eax, dword [esp + 0x1f28]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ca87
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1f10], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1f10]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f14], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1f14]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1f18], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1f18]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ca85
mov dword [esp + 0x44a4], 0xa
jmp 0x41cbb4
jmp 0x41ca87
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1f04], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1f04]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f0c], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1f08], eax
call fcn.00434890
mov ecx, dword [esp + 0x1f08]
mov dl, al
mov eax, dword [esp + 0x1f0c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41cbb2
movsd xmm0, qword [esp + 0x4490]
movsd qword [esp + 0x1ef8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1ef0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1ef0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1f00], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1ef4], eax
call fcn.00434890
mov ecx, dword [esp + 0x1ef4]
movsd xmm0, qword [esp + 0x1ef8]
mov dl, al
mov eax, dword [esp + 0x1f00]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x44a4], eax
jmp 0x41cbb4
ud2
mov eax, dword [esp + 0x1f1c]
mov ecx, dword [esp + 0x44a4]
add eax, ecx
mov dword [esp + 0x1edc], eax
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1ee0], eax
mov dword [esp + 0x4484], 0xc0380000
mov dword [esp + 0x4480], 0
xor eax, eax
je 0x41cbff
add dl, dh
movups xmm0, xmmword [esp + 0x4480]
movsd xmm0, qword [esp + 0x4480]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4478], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1ee4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1ee4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1eec], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1ee8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1ee8]
mov dl, al
mov eax, dword [esp + 0x1eec]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41cd2f
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1ed0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1ed0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ed4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1ed4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1ed8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1ed8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41cd2d
mov dword [esp + 0x448c], 0xa
jmp 0x41ce5c
jmp 0x41cd2f
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1ec4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1ec4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ecc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1ec8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1ec8]
mov dl, al
mov eax, dword [esp + 0x1ecc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ce5a
movsd xmm0, qword [esp + 0x4478]
movsd qword [esp + 0x1eb8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1eb0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1eb0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ec0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1eb4], eax
call fcn.00434890
mov ecx, dword [esp + 0x1eb4]
movsd xmm0, qword [esp + 0x1eb8]
mov dl, al
mov eax, dword [esp + 0x1ec0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x448c], eax
jmp 0x41ce5c
ud2
mov eax, dword [esp + 0x1edc]
mov ecx, dword [esp + 0x1ee0]
and ecx, dword [esp + 0x448c]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
mov byte [eax + ecx], dl
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1ea4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1ea4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1eac], eax
call fcn.00434880
movsx eax, al
shl eax, 3
mov dword [esp + 0x1ea8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1ea8]
mov dl, al
mov eax, dword [esp + 0x1eac]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d46e
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1e94], eax
mov eax, dword [esp + 0x4410]
add eax, 0xffffffe5
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4468], xmm0
xor eax, eax
je 0x41cf36
add dl, dh
movups xmm0, xmmword [esp + 0x4468]
movsd xmm0, qword [esp + 0x4468]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4460], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1e98], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1e98]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ea0], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1e9c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1e9c]
mov dl, al
mov eax, dword [esp + 0x1ea0]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d066
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1e88], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1e88]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e8c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1e8c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1e90], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1e90]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d064
mov dword [esp + 0x4474], 0xa
jmp 0x41d193
jmp 0x41d066
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1e7c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1e7c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e84], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1e80], eax
call fcn.00434890
mov ecx, dword [esp + 0x1e80]
mov dl, al
mov eax, dword [esp + 0x1e84]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d191
movsd xmm0, qword [esp + 0x4460]
movsd qword [esp + 0x1e70], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1e68], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1e68]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e78], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1e6c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1e6c]
movsd xmm0, qword [esp + 0x1e70]
mov dl, al
mov eax, dword [esp + 0x1e78]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4474], eax
jmp 0x41d193
ud2
mov eax, dword [esp + 0x1e94]
movsx ecx, byte [esp + 0x4474]
add eax, ecx
mov dword [esp + 0x1e54], eax
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1e58], eax
mov eax, dword [esp + 0x4410]
add eax, 0xffffffe5
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4450], xmm0
xor eax, eax
je 0x41d1e0
add dl, dh
movups xmm0, xmmword [esp + 0x4450]
movsd xmm0, qword [esp + 0x4450]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4448], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1e5c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1e5c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e64], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1e60], eax
call fcn.00434890
mov ecx, dword [esp + 0x1e60]
mov dl, al
mov eax, dword [esp + 0x1e64]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d310
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1e48], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1e48]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e4c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1e4c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1e50], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1e50]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d30e
mov dword [esp + 0x445c], 0xa
jmp 0x41d43d
jmp 0x41d310
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1e3c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1e3c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e44], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1e40], eax
call fcn.00434890
mov ecx, dword [esp + 0x1e40]
mov dl, al
mov eax, dword [esp + 0x1e44]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d43b
movsd xmm0, qword [esp + 0x4448]
movsd qword [esp + 0x1e30], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1e28], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1e28]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e38], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1e2c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1e2c]
movsd xmm0, qword [esp + 0x1e30]
mov dl, al
mov eax, dword [esp + 0x1e38]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x445c], eax
jmp 0x41d43d
ud2
mov eax, dword [esp + 0x1e54]
mov ecx, dword [esp + 0x1e58]
mov edx, dword [esp + 0x445c]
movsx edx, dl
and ecx, edx
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
mov byte [eax + ecx], dl
jmp 0x41d470
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1e1c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1e1c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e20], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1e20]
movsx ecx, cl
shl ecx, 2
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1e24], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1e24]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41da43
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1e0c], eax
mov dword [esp + 0x443c], 0xc0370000
mov dword [esp + 0x4438], 0
xor eax, eax
je 0x41d512
add dl, dh
movups xmm0, xmmword [esp + 0x4438]
movsd xmm0, qword [esp + 0x4438]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4430], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1e10], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1e10]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e18], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1e14], eax
call fcn.00434890
mov ecx, dword [esp + 0x1e14]
mov dl, al
mov eax, dword [esp + 0x1e18]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d642
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1e00], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1e00]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1e04], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1e04]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1e08], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1e08]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d640
mov dword [esp + 0x4444], 0xa
jmp 0x41d76f
jmp 0x41d642
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1df4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1df4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1dfc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1df8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1df8]
mov dl, al
mov eax, dword [esp + 0x1dfc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d76d
movsd xmm0, qword [esp + 0x4430]
movsd qword [esp + 0x1de8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1de0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1de0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1df0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1de4], eax
call fcn.00434890
mov ecx, dword [esp + 0x1de4]
movsd xmm0, qword [esp + 0x1de8]
mov dl, al
mov eax, dword [esp + 0x1df0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4444], eax
jmp 0x41d76f
ud2
mov eax, dword [esp + 0x1e0c]
mov ecx, dword [esp + 0x4444]
add eax, ecx
mov dword [esp + 0x1dcc], eax
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1dd0], eax
mov dword [esp + 0x4424], 0xc0370000
mov dword [esp + 0x4420], 0
xor eax, eax
je 0x41d7ba
add dl, dh
movups xmm0, xmmword [esp + 0x4420]
movsd xmm0, qword [esp + 0x4420]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4418], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1dd4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1dd4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ddc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1dd8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1dd8]
mov dl, al
mov eax, dword [esp + 0x1ddc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d8ea
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1dc0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1dc0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1dc4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1dc4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1dc8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1dc8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41d8e8
mov dword [esp + 0x442c], 0xa
jmp 0x41da17
jmp 0x41d8ea
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1db4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1db4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1dbc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1db8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1db8]
mov dl, al
mov eax, dword [esp + 0x1dbc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41da15
movsd xmm0, qword [esp + 0x4418]
movsd qword [esp + 0x1da8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1da0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1da0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1db0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1da4], eax
call fcn.00434890
mov ecx, dword [esp + 0x1da4]
movsd xmm0, qword [esp + 0x1da8]
mov dl, al
mov eax, dword [esp + 0x1db0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x442c], eax
jmp 0x41da17
ud2
mov eax, dword [esp + 0x1dcc]
mov ecx, dword [esp + 0x1dd0]
and ecx, dword [esp + 0x442c]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x4414]
mov ecx, dword [esp + 0x4410]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x4410]
add eax, 1
mov dword [esp + 0x4410], eax
jmp 0x41bc86
jmp 0x41da5b
mov ecx, dword [esp + 0x205c]
mov eax, dword [esp + 0x2060]
mov byte [eax], 1
add eax, 1
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__stricmp]
cmp eax, 0
sete al
mov byte [esp + 0x2067], al
mov al, byte [esp + 0x2067]
test al, 1
jne 0x41da99
jmp 0x41dec9
mov eax, dword [esp + 0x2ac8]
lea ecx, [0x401e90]
mov dword [eax], ecx
lea ecx, [esp + 0x29c4]
lea eax, [esp + 0x29c3]
mov dword [esp], eax
call fcn.004349b0
sub esp, 4
lea eax, [esp + 0x29d4]
mov dword [esp + 0x2e4c], eax
lea eax, [esp + 0x29c4]
mov dword [esp + 0x2e48], eax
lea eax, [esp + 0x3cdc]
mov dword [esp + 0x3ce4], eax
mov eax, dword [esp + 0x3ce4]
mov dword [esp + 0x3d40], 0x30
mov ecx, dword [esp + 0x3d40]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3d3c], ecx
mov ecx, dword [esp + 0x3d3c]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3cdc]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3cd0]
mov dword [esp + 0x3cf4], ecx
mov dword [esp + 0x3cf0], eax
mov eax, dword [esp + 0x3cf4]
mov ecx, dword [esp + 0x3cf0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3cf0]
mov dword [esp + 0x3d44], ecx
mov ecx, dword [esp + 0x3d44]
mov edx, dword [esp + 0x3d44]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3ce8], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3cec], ecx
mov ecx, dword [esp + 0x3cf0]
add ecx, dword [esp + 0x3ce8]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3cec]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3cd0]
mov dword [esp + 0x3cf8], eax
mov ecx, dword [esp + 0x3cf8]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x41dd50
lea eax, [esp + 0x3cd0]
mov dword [esp + 0x3cfc], eax
mov eax, dword [esp + 0x3cfc]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3ccc], eax
mov eax, dword [esp + 0x3ccc]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3ccc], ecx
cmp eax, 0
je 0x41dd4e
mov eax, dword [esp + 0x3ccc]
lea ecx, [esp + 0x3cd0]
mov dword [esp + 0x3d14], ecx
mov dword [esp + 0x3d10], eax
mov eax, dword [esp + 0x3d14]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3d10]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3d1c], 0xed821693
mov dword [esp + 0x3d18], 0xc57bd98f
mov eax, dword [esp + 0x3d1c]
mov dword [esp + 0x3d0c], ecx
mov dword [esp + 0x3d08], eax
mov eax, dword [esp + 0x3d08]
mov dword [esp + 0x3d04], eax
mov eax, dword [esp + 0x3d0c]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3d0c], ecx
mov al, byte [eax]
mov byte [esp + 0x3d03], al
cmp byte [esp + 0x3d03], 0
je 0x41dd21
mov ecx, dword [esp + 0x3d04]
mov al, byte [esp + 0x3d03]
mov dword [esp + 0x3d4c], ecx
mov byte [esp + 0x3d4b], al
mov eax, dword [esp + 0x3d4c]
mov dword [esp + 0x1d9c], eax
movsx eax, byte [esp + 0x3d4b]
cmp eax, 0x41
jl 0x41dcf0
movsx eax, byte [esp + 0x3d4b]
cmp eax, 0x5a
jg 0x41dcf0
movsx eax, byte [esp + 0x3d4b]
or eax, 0x20
mov dword [esp + 0x1d98], eax
jmp 0x41dcff
movsx eax, byte [esp + 0x3d4b]
mov dword [esp + 0x1d98], eax
mov eax, dword [esp + 0x1d9c]
mov ecx, dword [esp + 0x1d98]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3d04], eax
jmp 0x41dc6e
mov eax, dword [esp + 0x3d04]
mov dword [esp + 0x3d24], 0xed821693
mov dword [esp + 0x3d20], 0xc57bd98f
mov ecx, dword [esp + 0x3d20]
cmp eax, ecx
je 0x41dd7e
jmp 0x41dbde
jmp 0x41dd50
lea eax, [esp + 0x3cdc]
mov dword [esp + 0x3d38], eax
mov eax, dword [esp + 0x3d38]
mov ecx, dword [eax]
mov dword [esp + 0x3d50], ecx
mov ecx, dword [esp + 0x3d50]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x41db1d
mov eax, dword [esp + 0x3ccc]
lea ecx, [esp + 0x3cd0]
mov dword [esp + 0x3d34], ecx
mov dword [esp + 0x3d30], eax
mov eax, dword [esp + 0x3d34]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3d2c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3d28], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3d2c]
mov edx, dword [esp + 0x3d28]
mov esi, dword [esp + 0x3d30]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3ce0], eax
mov eax, dword [esp + 0x3ce0]
mov dword [esp + 0x1d90], eax
mov eax, dword [esp + 0x2e48]
mov dword [esp + 0x2ee0], eax
mov eax, dword [esp + 0x2ee0]
mov dword [esp + 0x2f8c], eax
mov eax, dword [esp + 0x2f8c]
mov dword [esp + 0x1d94], eax
mov dword [esp + 0x2fd8], eax
mov eax, dword [esp + 0x2fd8]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x41deae
mov eax, dword [esp + 0x1d94]
mov dword [esp + 0x30a4], eax
mov dword [esp + 0x30a0], eax
mov eax, dword [esp + 0x30a4]
mov dword [esp + 0x1d8c], eax
mov dword [esp + 0x309c], 0
cmp dword [esp + 0x309c], 0x10
jge 0x41deac
mov eax, dword [esp + 0x1d8c]
mov ecx, dword [esp + 0x30a0]
mov edx, dword [esp + 0x309c]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x309c]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x309c]
add eax, 1
mov dword [esp + 0x309c], eax
jmp 0x41de61
jmp 0x41deae
mov eax, dword [esp + 0x1d90]
mov ecx, dword [esp + 0x1d94]
mov dword [esp], ecx
call eax
sub esp, 4
jmp 0x433412
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1d80], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1d80]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d84], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1d84]
movsx ecx, cl
shl ecx, 1
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1d88], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1d88]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e4a4
mov dword [esp + 0x2dcc], 0x3ff00000
mov dword [esp + 0x2dc8], 0
xor eax, eax
je 0x41df51
add dl, dh
movups xmm0, xmmword [esp + 0x2dc8]
movsd xmm0, qword [esp + 0x2dc8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2dc0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1d74], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1d74]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d7c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1d78], eax
call fcn.00434890
mov ecx, dword [esp + 0x1d78]
mov dl, al
mov eax, dword [esp + 0x1d7c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e081
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1d68], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1d68]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d6c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1d6c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1d70], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1d70]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e07f
mov dword [esp + 0x2dd4], 0xa
jmp 0x41e1ae
jmp 0x41e081
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1d5c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1d5c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d64], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1d60], eax
call fcn.00434890
mov ecx, dword [esp + 0x1d60]
mov dl, al
mov eax, dword [esp + 0x1d64]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e1ac
movsd xmm0, qword [esp + 0x2dc0]
movsd qword [esp + 0x1d50], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1d48], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1d48]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d58], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1d4c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1d4c]
movsd xmm0, qword [esp + 0x1d50]
mov dl, al
mov eax, dword [esp + 0x1d58]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2dd4], eax
jmp 0x41e1ae
ud2
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1d3c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1d3c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d44], eax
call fcn.00434880
movsx eax, al
shl eax, 0
mov dword [esp + 0x1d40], eax
call fcn.00434890
mov ecx, dword [esp + 0x1d40]
mov dl, al
mov eax, dword [esp + 0x1d44]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e49f
mov dword [esp + 0x2db4], 0x40180000
mov dword [esp + 0x2db0], 0
xor eax, eax
je 0x41e242
add dl, dh
movups xmm0, xmmword [esp + 0x2db0]
movsd xmm0, qword [esp + 0x2db0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2da8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1d30], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1d30]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d38], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1d34], eax
call fcn.00434890
mov ecx, dword [esp + 0x1d34]
mov dl, al
mov eax, dword [esp + 0x1d38]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e372
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1d24], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1d24]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d28], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1d28]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1d2c], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1d2c]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e370
mov dword [esp + 0x2dbc], 0xa
jmp 0x41e49f
jmp 0x41e372
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1d18], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1d18]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d20], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1d1c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1d1c]
mov dl, al
mov eax, dword [esp + 0x1d20]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e49d
movsd xmm0, qword [esp + 0x2da8]
movsd qword [esp + 0x1d08], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1d00], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1d00]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1d14], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1d04], eax
call fcn.00434890
mov ecx, dword [esp + 0x1d04]
movsd xmm0, qword [esp + 0x1d08]
mov dl, al
mov eax, dword [esp + 0x1d14]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2dbc], eax
jmp 0x41e49f
ud2
jmp 0x433410
xor eax, eax
cmp dword [0x4a4f60], 0
mov byte [esp + 0x1cff], al
je 0x420333
mov eax, dword [esp + 0x2a58]
mov dword [esp + 0x1cf4], eax
lea ecx, [esp + 0x29b4]
lea eax, [esp + 0x29b3]
mov dword [esp], eax
call fcn.00434a10
sub esp, 4
lea eax, [esp + 0x29b4]
mov dword [esp + 0x2e50], eax
mov eax, dword [esp + 0x2e50]
mov dword [esp + 0x4504], eax
mov eax, dword [esp + 0x4504]
mov dword [esp + 0x1cf8], eax
test byte [eax], 1
jne 0x420305
mov eax, dword [esp + 0x1cf8]
add eax, 1
mov dword [esp + 0x450c], eax
mov dword [esp + 0x4508], 0
mov eax, dword [esp + 0x4508]
cmp eax, 0xe
jae 0x420303
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1ce8], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1ce8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1cec], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1cec]
movsx ecx, cl
imul ecx, ecx, 7
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1cf0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1cf0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41eb13
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1cd8], eax
mov dword [esp + 0x45f4], 0xc0370000
mov dword [esp + 0x45f0], 0
xor eax, eax
je 0x41e5e2
add dl, dh
movups xmm0, xmmword [esp + 0x45f0]
movsd xmm0, qword [esp + 0x45f0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x45e8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1cdc], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1cdc]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ce4], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1ce0], eax
call fcn.00434890
mov ecx, dword [esp + 0x1ce0]
mov dl, al
mov eax, dword [esp + 0x1ce4]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e712
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1ccc], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1ccc]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1cd0], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1cd0]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1cd4], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1cd4]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e710
mov dword [esp + 0x45f8], 0xa
jmp 0x41e83f
jmp 0x41e712
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1cc0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1cc0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1cc8], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1cc4], eax
call fcn.00434890
mov ecx, dword [esp + 0x1cc4]
mov dl, al
mov eax, dword [esp + 0x1cc8]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e83d
movsd xmm0, qword [esp + 0x45e8]
movsd qword [esp + 0x1cb0], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1ca8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1ca8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1cbc], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1cac], eax
call fcn.00434890
mov ecx, dword [esp + 0x1cac]
movsd xmm0, qword [esp + 0x1cb0]
mov dl, al
mov eax, dword [esp + 0x1cbc]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x45f8], eax
jmp 0x41e83f
ud2
mov eax, dword [esp + 0x1cd8]
mov ecx, dword [esp + 0x45f8]
add eax, ecx
mov dword [esp + 0x1c94], eax
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1c98], eax
mov dword [esp + 0x45dc], 0xc0370000
mov dword [esp + 0x45d8], 0
xor eax, eax
je 0x41e88a
add dl, dh
movups xmm0, xmmword [esp + 0x45d8]
movsd xmm0, qword [esp + 0x45d8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x45d0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1c9c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1c9c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ca4], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1ca0], eax
call fcn.00434890
mov ecx, dword [esp + 0x1ca0]
mov dl, al
mov eax, dword [esp + 0x1ca4]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e9ba
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1c88], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1c88]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c8c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1c8c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1c90], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1c90]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41e9b8
mov dword [esp + 0x45e4], 0xa
jmp 0x41eae7
jmp 0x41e9ba
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1c7c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1c7c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c84], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1c80], eax
call fcn.00434890
mov ecx, dword [esp + 0x1c80]
mov dl, al
mov eax, dword [esp + 0x1c84]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41eae5
movsd xmm0, qword [esp + 0x45d0]
movsd qword [esp + 0x1c70], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1c68], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1c68]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c78], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1c6c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1c6c]
movsd xmm0, qword [esp + 0x1c70]
mov dl, al
mov eax, dword [esp + 0x1c78]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x45e4], eax
jmp 0x41eae7
ud2
mov eax, dword [esp + 0x1c94]
mov ecx, dword [esp + 0x1c98]
and ecx, dword [esp + 0x45e4]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
mov byte [eax + ecx], dl
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1c5c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1c5c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c64], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 9
mov dword [esp + 0x1c60], eax
call fcn.00434890
mov ecx, dword [esp + 0x1c60]
mov dl, al
mov eax, dword [esp + 0x1c64]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41fd1a
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1c50], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1c50]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c54], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1c54]
movsx ecx, cl
shl ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1c58], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1c58]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f15f
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1c40], eax
mov dword [esp + 0x45c4], 0xc0360000
mov dword [esp + 0x45c0], 0
xor eax, eax
je 0x41ec2e
add dl, dh
movups xmm0, xmmword [esp + 0x45c0]
movsd xmm0, qword [esp + 0x45c0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x45b8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1c44], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1c44]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c4c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1c48], eax
call fcn.00434890
mov ecx, dword [esp + 0x1c48]
mov dl, al
mov eax, dword [esp + 0x1c4c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ed5e
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1c34], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1c34]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c38], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1c38]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1c3c], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1c3c]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ed5c
mov dword [esp + 0x45cc], 0xa
jmp 0x41ee8b
jmp 0x41ed5e
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1c28], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1c28]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c30], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1c2c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1c2c]
mov dl, al
mov eax, dword [esp + 0x1c30]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41ee89
movsd xmm0, qword [esp + 0x45b8]
movsd qword [esp + 0x1c18], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1c10], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1c10]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c24], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1c14], eax
call fcn.00434890
mov ecx, dword [esp + 0x1c14]
movsd xmm0, qword [esp + 0x1c18]
mov dl, al
mov eax, dword [esp + 0x1c24]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x45cc], eax
jmp 0x41ee8b
ud2
mov eax, dword [esp + 0x1c40]
mov ecx, dword [esp + 0x45cc]
add eax, ecx
mov dword [esp + 0x1bfc], eax
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1c00], eax
mov dword [esp + 0x45ac], 0xc0360000
mov dword [esp + 0x45a8], 0
xor eax, eax
je 0x41eed6
add dl, dh
movups xmm0, xmmword [esp + 0x45a8]
movsd xmm0, qword [esp + 0x45a8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x45a0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1c04], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1c04]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1c0c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1c08], eax
call fcn.00434890
mov ecx, dword [esp + 0x1c08]
mov dl, al
mov eax, dword [esp + 0x1c0c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f006
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1bf0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1bf0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1bf4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1bf4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1bf8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1bf8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f004
mov dword [esp + 0x45b4], 0xa
jmp 0x41f133
jmp 0x41f006
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1be4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1be4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1bec], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1be8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1be8]
mov dl, al
mov eax, dword [esp + 0x1bec]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f131
movsd xmm0, qword [esp + 0x45a0]
movsd qword [esp + 0x1bd8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1bd0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1bd0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1be0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1bd4], eax
call fcn.00434890
mov ecx, dword [esp + 0x1bd4]
movsd xmm0, qword [esp + 0x1bd8]
mov dl, al
mov eax, dword [esp + 0x1be0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x45b4], eax
jmp 0x41f133
ud2
mov eax, dword [esp + 0x1bfc]
mov ecx, dword [esp + 0x1c00]
and ecx, dword [esp + 0x45b4]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
mov byte [eax + ecx], dl
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1bc4], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1bc4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1bc8], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1bc8]
movsx ecx, cl
imul ecx, ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1bcc], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1bcc]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f732
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1bb4], eax
mov dword [esp + 0x4594], 0xc0350000
mov dword [esp + 0x4590], 0
xor eax, eax
je 0x41f201
add dl, dh
movups xmm0, xmmword [esp + 0x4590]
movsd xmm0, qword [esp + 0x4590]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4588], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1bb8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1bb8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1bc0], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1bbc], eax
call fcn.00434890
mov ecx, dword [esp + 0x1bbc]
mov dl, al
mov eax, dword [esp + 0x1bc0]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f331
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1ba8], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1ba8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1bac], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1bac]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1bb0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1bb0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f32f
mov dword [esp + 0x459c], 0xa
jmp 0x41f45e
jmp 0x41f331
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1b9c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b9c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ba4], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1ba0], eax
call fcn.00434890
mov ecx, dword [esp + 0x1ba0]
mov dl, al
mov eax, dword [esp + 0x1ba4]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f45c
movsd xmm0, qword [esp + 0x4588]
movsd qword [esp + 0x1b90], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1b88], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b88]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b98], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1b8c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1b8c]
movsd xmm0, qword [esp + 0x1b90]
mov dl, al
mov eax, dword [esp + 0x1b98]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x459c], eax
jmp 0x41f45e
ud2
mov eax, dword [esp + 0x1bb4]
mov ecx, dword [esp + 0x459c]
add eax, ecx
mov dword [esp + 0x1b74], eax
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1b78], eax
mov dword [esp + 0x457c], 0xc0350000
mov dword [esp + 0x4578], 0
xor eax, eax
je 0x41f4a9
add dl, dh
movups xmm0, xmmword [esp + 0x4578]
movsd xmm0, qword [esp + 0x4578]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4570], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1b7c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b7c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b84], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1b80], eax
call fcn.00434890
mov ecx, dword [esp + 0x1b80]
mov dl, al
mov eax, dword [esp + 0x1b84]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f5d9
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1b68], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1b68]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b6c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1b6c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1b70], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1b70]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f5d7
mov dword [esp + 0x4584], 0xa
jmp 0x41f706
jmp 0x41f5d9
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1b5c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b5c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b64], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1b60], eax
call fcn.00434890
mov ecx, dword [esp + 0x1b60]
mov dl, al
mov eax, dword [esp + 0x1b64]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f704
movsd xmm0, qword [esp + 0x4570]
movsd qword [esp + 0x1b50], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1b48], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b48]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b58], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1b4c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1b4c]
movsd xmm0, qword [esp + 0x1b50]
mov dl, al
mov eax, dword [esp + 0x1b58]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4584], eax
jmp 0x41f706
ud2
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1b3c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b3c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b44], eax
call fcn.00434880
movsx eax, al
shl eax, 3
mov dword [esp + 0x1b40], eax
call fcn.00434890
mov ecx, dword [esp + 0x1b40]
mov dl, al
mov eax, dword [esp + 0x1b44]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41fd18
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1b2c], eax
mov eax, dword [esp + 0x4508]
add eax, 0xffffffe8
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4560], xmm0
xor eax, eax
je 0x41f7e0
add dl, dh
movups xmm0, xmmword [esp + 0x4560]
movsd xmm0, qword [esp + 0x4560]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4558], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1b30], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b30]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b38], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1b34], eax
call fcn.00434890
mov ecx, dword [esp + 0x1b34]
mov dl, al
mov eax, dword [esp + 0x1b38]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f910
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1b20], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1b20]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b24], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1b24]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1b28], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1b28]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41f90e
mov dword [esp + 0x456c], 0xa
jmp 0x41fa3d
jmp 0x41f910
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1b14], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b14]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b1c], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1b18], eax
call fcn.00434890
mov ecx, dword [esp + 0x1b18]
mov dl, al
mov eax, dword [esp + 0x1b1c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41fa3b
movsd xmm0, qword [esp + 0x4558]
movsd qword [esp + 0x1b08], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1b00], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1b00]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1b10], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1b04], eax
call fcn.00434890
mov ecx, dword [esp + 0x1b04]
movsd xmm0, qword [esp + 0x1b08]
mov dl, al
mov eax, dword [esp + 0x1b10]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x456c], eax
jmp 0x41fa3d
ud2
mov eax, dword [esp + 0x1b2c]
movsx ecx, byte [esp + 0x456c]
add eax, ecx
mov dword [esp + 0x1aec], eax
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1af0], eax
mov eax, dword [esp + 0x4508]
add eax, 0xffffffe8
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4548], xmm0
xor eax, eax
je 0x41fa8a
add dl, dh
movups xmm0, xmmword [esp + 0x4548]
movsd xmm0, qword [esp + 0x4548]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4540], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1af4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1af4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1afc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1af8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1af8]
mov dl, al
mov eax, dword [esp + 0x1afc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41fbba
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1ae0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1ae0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ae4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1ae4]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1ae8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1ae8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41fbb8
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1ad4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1ad4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1adc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1ad8], eax
call fcn.00434890
mov ecx, dword [esp + 0x1ad8]
mov dl, al
mov eax, dword [esp + 0x1adc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41fce5
jmp 0x41fd1a
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1ab4], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1ab4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ab8], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1ab8]
movsx ecx, cl
shl ecx, 2
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1abc], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1abc]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4202ed
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1aa4], eax
mov dword [esp + 0x4534], 0xc0340000
mov dword [esp + 0x4530], 0
xor eax, eax
je 0x41fdbc
add dl, dh
movups xmm0, xmmword [esp + 0x4530]
movsd xmm0, qword [esp + 0x4530]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4528], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1aa8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1aa8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1ab0], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1aac], eax
call fcn.00434890
mov ecx, dword [esp + 0x1aac]
mov dl, al
mov eax, dword [esp + 0x1ab0]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41feec
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1a98], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1a98]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a9c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1a9c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1aa0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1aa0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x41feea
mov dword [esp + 0x453c], 0xa
jmp 0x420019
jmp 0x41feec
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1a8c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1a8c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a94], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1a90], eax
call fcn.00434890
mov ecx, dword [esp + 0x1a90]
mov dl, al
mov eax, dword [esp + 0x1a94]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420017
movsd xmm0, qword [esp + 0x4528]
movsd qword [esp + 0x1a80], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1a78], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1a78]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a88], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1a7c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1a7c]
movsd xmm0, qword [esp + 0x1a80]
mov dl, al
mov eax, dword [esp + 0x1a88]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x453c], eax
jmp 0x420019
ud2
mov eax, dword [esp + 0x1aa4]
mov ecx, dword [esp + 0x453c]
add eax, ecx
mov dword [esp + 0x1a64], eax
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1a68], eax
mov dword [esp + 0x451c], 0xc0340000
mov dword [esp + 0x4518], 0
xor eax, eax
je 0x420064
add dl, dh
movups xmm0, xmmword [esp + 0x4518]
movsd xmm0, qword [esp + 0x4518]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4510], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1a6c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1a6c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a74], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1a70], eax
call fcn.00434890
mov ecx, dword [esp + 0x1a70]
mov dl, al
mov eax, dword [esp + 0x1a74]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420194
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1a58], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1a58]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a5c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1a5c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1a60], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1a60]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420192
mov dword [esp + 0x4524], 0xa
jmp 0x4202c1
jmp 0x420194
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1a4c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1a4c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a54], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1a50], eax
call fcn.00434890
mov ecx, dword [esp + 0x1a50]
mov dl, al
mov eax, dword [esp + 0x1a54]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4202bf
movsd xmm0, qword [esp + 0x4510]
movsd qword [esp + 0x1a40], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1a38], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1a38]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a48], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1a3c], eax
call fcn.00434890
mov ecx, dword [esp + 0x1a3c]
movsd xmm0, qword [esp + 0x1a40]
mov dl, al
mov eax, dword [esp + 0x1a48]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4524], eax
jmp 0x4202c1
ud2
mov eax, dword [esp + 0x1a64]
mov ecx, dword [esp + 0x1a68]
and ecx, dword [esp + 0x4524]
shl ecx, 1
sub eax, ecx
mov dl, al
mov eax, dword [esp + 0x450c]
mov ecx, dword [esp + 0x4508]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x4508]
add eax, 1
mov dword [esp + 0x4508], eax
jmp 0x41e530
jmp 0x420305
mov ecx, dword [esp + 0x1cf4]
mov eax, dword [esp + 0x1cf8]
mov byte [eax], 1
add eax, 1
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__stricmp]
cmp eax, 0
sete al
mov byte [esp + 0x1cff], al
mov al, byte [esp + 0x1cff]
test al, 1
jne 0x420343
jmp 0x420773
mov eax, dword [esp + 0x2ac8]
lea ecx, [0x401ed0]
mov dword [eax], ecx
lea ecx, [esp + 0x29a2]
lea eax, [esp + 0x29a1]
mov dword [esp], eax
call fcn.00434a70
sub esp, 4
lea eax, [esp + 0x29b2]
mov dword [esp + 0x2e58], eax
lea eax, [esp + 0x29a2]
mov dword [esp + 0x2e54], eax
lea eax, [esp + 0x3d64]
mov dword [esp + 0x3d6c], eax
mov eax, dword [esp + 0x3d6c]
mov dword [esp + 0x3dc8], 0x30
mov ecx, dword [esp + 0x3dc8]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3dc4], ecx
mov ecx, dword [esp + 0x3dc4]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3d64]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3d58]
mov dword [esp + 0x3d7c], ecx
mov dword [esp + 0x3d78], eax
mov eax, dword [esp + 0x3d7c]
mov ecx, dword [esp + 0x3d78]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3d78]
mov dword [esp + 0x3dcc], ecx
mov ecx, dword [esp + 0x3dcc]
mov edx, dword [esp + 0x3dcc]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3d70], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3d74], ecx
mov ecx, dword [esp + 0x3d78]
add ecx, dword [esp + 0x3d70]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3d74]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3d58]
mov dword [esp + 0x3d80], eax
mov ecx, dword [esp + 0x3d80]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x4205fa
lea eax, [esp + 0x3d58]
mov dword [esp + 0x3d84], eax
mov eax, dword [esp + 0x3d84]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3d54], eax
mov eax, dword [esp + 0x3d54]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3d54], ecx
cmp eax, 0
je 0x4205f8
mov eax, dword [esp + 0x3d54]
lea ecx, [esp + 0x3d58]
mov dword [esp + 0x3d9c], ecx
mov dword [esp + 0x3d98], eax
mov eax, dword [esp + 0x3d9c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3d98]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3da4], 0xbc783188
mov dword [esp + 0x3da0], 0x2091b4a0
mov eax, dword [esp + 0x3da4]
mov dword [esp + 0x3d94], ecx
mov dword [esp + 0x3d90], eax
mov eax, dword [esp + 0x3d90]
mov dword [esp + 0x3d8c], eax
mov eax, dword [esp + 0x3d94]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3d94], ecx
mov al, byte [eax]
mov byte [esp + 0x3d8b], al
cmp byte [esp + 0x3d8b], 0
je 0x4205cb
mov ecx, dword [esp + 0x3d8c]
mov al, byte [esp + 0x3d8b]
mov dword [esp + 0x3dd4], ecx
mov byte [esp + 0x3dd3], al
mov eax, dword [esp + 0x3dd4]
mov dword [esp + 0x1a34], eax
movsx eax, byte [esp + 0x3dd3]
cmp eax, 0x41
jl 0x42059a
movsx eax, byte [esp + 0x3dd3]
cmp eax, 0x5a
jg 0x42059a
movsx eax, byte [esp + 0x3dd3]
or eax, 0x20
mov dword [esp + 0x1a30], eax
jmp 0x4205a9
movsx eax, byte [esp + 0x3dd3]
mov dword [esp + 0x1a30], eax
mov eax, dword [esp + 0x1a34]
mov ecx, dword [esp + 0x1a30]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3d8c], eax
jmp 0x420518
mov eax, dword [esp + 0x3d8c]
mov dword [esp + 0x3dac], 0xbc783188
mov dword [esp + 0x3da8], 0x2091b4a0
mov ecx, dword [esp + 0x3da8]
cmp eax, ecx
je 0x420628
jmp 0x420488
jmp 0x4205fa
lea eax, [esp + 0x3d64]
mov dword [esp + 0x3dc0], eax
mov eax, dword [esp + 0x3dc0]
mov ecx, dword [eax]
mov dword [esp + 0x3dd8], ecx
mov ecx, dword [esp + 0x3dd8]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4203c7
mov eax, dword [esp + 0x3d54]
lea ecx, [esp + 0x3d58]
mov dword [esp + 0x3dbc], ecx
mov dword [esp + 0x3db8], eax
mov eax, dword [esp + 0x3dbc]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3db4], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3db0], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3db4]
mov edx, dword [esp + 0x3db0]
mov esi, dword [esp + 0x3db8]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3d68], eax
mov eax, dword [esp + 0x3d68]
mov dword [esp + 0x1a28], eax
mov eax, dword [esp + 0x2e54]
mov dword [esp + 0x2edc], eax
mov eax, dword [esp + 0x2edc]
mov dword [esp + 0x2f90], eax
mov eax, dword [esp + 0x2f90]
mov dword [esp + 0x1a2c], eax
mov dword [esp + 0x2fd4], eax
mov eax, dword [esp + 0x2fd4]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x420758
mov eax, dword [esp + 0x1a2c]
mov dword [esp + 0x3098], eax
mov dword [esp + 0x3094], eax
mov eax, dword [esp + 0x3098]
mov dword [esp + 0x1a24], eax
mov dword [esp + 0x3090], 0
cmp dword [esp + 0x3090], 0x10
jge 0x420756
mov eax, dword [esp + 0x1a24]
mov ecx, dword [esp + 0x3094]
mov edx, dword [esp + 0x3090]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3090]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3090]
add eax, 1
mov dword [esp + 0x3090], eax
jmp 0x42070b
jmp 0x420758
mov eax, dword [esp + 0x1a28]
mov ecx, dword [esp + 0x1a2c]
mov dword [esp], ecx
call eax
sub esp, 4
jmp 0x43340e
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1a18], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1a18]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a1c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1a1c]
movsx ecx, cl
imul ecx, ecx, 0xa
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1a20], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1a20]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420d4f
mov dword [esp + 0x2d9c], 0x40220000
mov dword [esp + 0x2d98], 0
xor eax, eax
je 0x4207fc
add dl, dh
movups xmm0, xmmword [esp + 0x2d98]
movsd xmm0, qword [esp + 0x2d98]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2d90], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1a0c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1a0c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a14], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1a10], eax
call fcn.00434890
mov ecx, dword [esp + 0x1a10]
mov dl, al
mov eax, dword [esp + 0x1a14]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x42092c
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1a00], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1a00]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1a04], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1a04]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1a08], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1a08]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x42092a
mov dword [esp + 0x2da4], 0xa
jmp 0x420a59
jmp 0x42092c
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x19f4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x19f4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x19fc], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x19f8], eax
call fcn.00434890
mov ecx, dword [esp + 0x19f8]
mov dl, al
mov eax, dword [esp + 0x19fc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420a57
movsd xmm0, qword [esp + 0x2d90]
movsd qword [esp + 0x19e8], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x19e0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x19e0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x19f0], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x19e4], eax
call fcn.00434890
mov ecx, dword [esp + 0x19e4]
movsd xmm0, qword [esp + 0x19e8]
mov dl, al
mov eax, dword [esp + 0x19f0]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2da4], eax
jmp 0x420a59
ud2
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x19d4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x19d4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x19dc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 9
mov dword [esp + 0x19d8], eax
call fcn.00434890
mov ecx, dword [esp + 0x19d8]
mov dl, al
mov eax, dword [esp + 0x19dc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420d4a
mov dword [esp + 0x2d84], 0x40100000
mov dword [esp + 0x2d80], 0
xor eax, eax
je 0x420aed
add dl, dh
movups xmm0, xmmword [esp + 0x2d80]
movsd xmm0, qword [esp + 0x2d80]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2d78], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x19c8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x19c8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x19d0], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x19cc], eax
call fcn.00434890
mov ecx, dword [esp + 0x19cc]
mov dl, al
mov eax, dword [esp + 0x19d0]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420c1d
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x19bc], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x19bc]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x19c0], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x19c0]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x19c4], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x19c4]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420c1b
mov dword [esp + 0x2d8c], 0xa
jmp 0x420d4a
jmp 0x420c1d
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x19b0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x19b0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x19b8], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x19b4], eax
call fcn.00434890
mov ecx, dword [esp + 0x19b4]
mov dl, al
mov eax, dword [esp + 0x19b8]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420d48
movsd xmm0, qword [esp + 0x2d78]
movsd qword [esp + 0x19a0], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1998], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1998]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x19ac], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x199c], eax
call fcn.00434890
mov ecx, dword [esp + 0x199c]
movsd xmm0, qword [esp + 0x19a0]
mov dl, al
mov eax, dword [esp + 0x19ac]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2d8c], eax
jmp 0x420d4a
ud2
jmp 0x43340c
xor eax, eax
cmp dword [0x4a4f60], 0
mov byte [esp + 0x1997], al
je 0x422bde
mov eax, dword [esp + 0x2a58]
mov dword [esp + 0x198c], eax
lea ecx, [esp + 0x2995]
lea eax, [esp + 0x2994]
mov dword [esp], eax
call fcn.00434ad0
sub esp, 4
lea eax, [esp + 0x2995]
mov dword [esp + 0x2e5c], eax
mov eax, dword [esp + 0x2e5c]
mov dword [esp + 0x45fc], eax
mov eax, dword [esp + 0x45fc]
mov dword [esp + 0x1990], eax
test byte [eax], 1
jne 0x422bb0
mov eax, dword [esp + 0x1990]
add eax, 1
mov dword [esp + 0x4604], eax
mov dword [esp + 0x4600], 0
mov eax, dword [esp + 0x4600]
cmp eax, 0xb
jae 0x422bae
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1980], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1980]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1984], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1984]
movsx ecx, cl
imul ecx, ecx, 7
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1988], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1988]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4213be
mov eax, dword [esp + 0x4604]
mov ecx, dword [esp + 0x4600]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1970], eax
mov dword [esp + 0x46ec], 0xc0340000
mov dword [esp + 0x46e8], 0
xor eax, eax
je 0x420e8d
add dl, dh
movups xmm0, xmmword [esp + 0x46e8]
movsd xmm0, qword [esp + 0x46e8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x46e0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1974], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1974]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x197c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1978], eax
call fcn.00434890
mov ecx, dword [esp + 0x1978]
mov dl, al
mov eax, dword [esp + 0x197c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420fbd
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1964], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1964]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1968], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1968]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x196c], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x196c]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x420fbb
mov dword [esp + 0x46f0], 0xa
jmp 0x4210ea
jmp 0x420fbd
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1958], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1958]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1960], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x195c], eax
call fcn.00434890
mov ecx, dword [esp + 0x195c]
mov dl, al
mov eax, dword [esp + 0x1960]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4210e8
movsd xmm0, qword [esp + 0x46e0]
movsd qword [esp + 0x1948], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1940], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1940]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1954], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1944], eax
call fcn.00434890
mov ecx, dword [esp + 0x1944]
movsd xmm0, qword [esp + 0x1948]
mov dl, al
mov eax, dword [esp + 0x1954]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x46f0], eax
jmp 0x4210ea
ud2
mov eax, dword [esp + 0x1970]
mov ecx, dword [esp + 0x46f0]
add eax, ecx
mov dword [esp + 0x192c], eax
mov eax, dword [esp + 0x4604]
mov ecx, dword [esp + 0x4600]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1930], eax
mov dword [esp + 0x46d4], 0xc0340000
mov dword [esp + 0x46d0], 0
xor eax, eax
je 0x421135
add dl, dh
movups xmm0, xmmword [esp + 0x46d0]
movsd xmm0, qword [esp + 0x46d0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x46c8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1934], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1934]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x193c], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1938], eax
call fcn.00434890
mov ecx, dword [esp + 0x1938]
mov dl, al
mov eax, dword [esp + 0x193c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421265
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1920], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1920]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1924], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1924]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1928], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1928]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421263
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1914], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1914]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x191c], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1918], eax
call fcn.00434890
mov ecx, dword [esp + 0x1918]
mov dl, al
mov eax, dword [esp + 0x191c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421390
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x18f4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x18f4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x18fc], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 9
mov dword [esp + 0x18f8], eax
call fcn.00434890
mov ecx, dword [esp + 0x18f8]
mov dl, al
mov eax, dword [esp + 0x18fc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4225c5
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x18e8], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x18e8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x18ec], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x18ec]
movsx ecx, cl
shl ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x18f0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x18f0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421a0a
mov eax, dword [esp + 0x4604]
mov ecx, dword [esp + 0x4600]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x18d8], eax
mov dword [esp + 0x46bc], 0xc0330000
mov dword [esp + 0x46b8], 0
xor eax, eax
je 0x4214d9
add dl, dh
movups xmm0, xmmword [esp + 0x46b8]
movsd xmm0, qword [esp + 0x46b8]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x46b0], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x18dc], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x18dc]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x18e4], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x18e0], eax
call fcn.00434890
mov ecx, dword [esp + 0x18e0]
mov dl, al
mov eax, dword [esp + 0x18e4]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421609
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x18cc], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x18cc]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x18d0], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x18d0]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x18d4], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x18d4]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421607
mov dword [esp + 0x46c4], 0xa
jmp 0x421736
jmp 0x421609
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x18c0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x18c0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x18c8], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x18c4], eax
call fcn.00434890
mov ecx, dword [esp + 0x18c4]
mov dl, al
mov eax, dword [esp + 0x18c8]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421734
movsd xmm0, qword [esp + 0x46b0]
movsd qword [esp + 0x18b0], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x18a8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x18a8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x18bc], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x18ac], eax
call fcn.00434890
mov ecx, dword [esp + 0x18ac]
movsd xmm0, qword [esp + 0x18b0]
mov dl, al
mov eax, dword [esp + 0x18bc]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x46c4], eax
jmp 0x421736
ud2
mov eax, dword [esp + 0x18d8]
mov ecx, dword [esp + 0x46c4]
add eax, ecx
mov dword [esp + 0x1894], eax
mov eax, dword [esp + 0x4604]
mov ecx, dword [esp + 0x4600]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1898], eax
mov dword [esp + 0x46a4], 0xc0330000
mov dword [esp + 0x46a0], 0
xor eax, eax
je 0x421781
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x185c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x185c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1860], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1860]
movsx ecx, cl
imul ecx, ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1864], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1864]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421fdd
mov eax, dword [esp + 0x4604]
mov ecx, dword [esp + 0x4600]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x184c], eax
mov dword [esp + 0x468c], 0xc0320000
mov dword [esp + 0x4688], 0
xor eax, eax
je 0x421aac
add dl, dh
movups xmm0, xmmword [esp + 0x4688]
movsd xmm0, qword [esp + 0x4688]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4680], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1850], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1850]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1858], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1854], eax
call fcn.00434890
mov ecx, dword [esp + 0x1854]
mov dl, al
mov eax, dword [esp + 0x1858]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421bdc
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1840], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1840]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1844], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1844]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1848], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1848]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421bda
mov dword [esp + 0x4694], 0xa
jmp 0x421d09
jmp 0x421bdc
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1834], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1834]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x183c], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1838], eax
call fcn.00434890
mov ecx, dword [esp + 0x1838]
mov dl, al
mov eax, dword [esp + 0x183c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x421d07
movsd xmm0, qword [esp + 0x4680]
movsd qword [esp + 0x1828], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1820], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1820]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1830], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1824], eax
call fcn.00434890
mov ecx, dword [esp + 0x1824]
movsd xmm0, qword [esp + 0x1828]
mov dl, al
mov eax, dword [esp + 0x1830]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4694], eax
jmp 0x421d09
ud2
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x17d4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x17d4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x17dc], eax
call fcn.00434880
movsx eax, al
shl eax, 3
mov dword [esp + 0x17d8], eax
call fcn.00434890
mov ecx, dword [esp + 0x17d8]
mov dl, al
mov eax, dword [esp + 0x17dc]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4225c3
mov eax, dword [esp + 0x4604]
mov ecx, dword [esp + 0x4600]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x17c4], eax
mov eax, dword [esp + 0x4600]
add eax, 0xffffffeb
cvtsi2sd xmm0, eax
movsd qword [esp + 0x4658], xmm0
xor eax, eax
je 0x42208b
add dl, dh
movups xmm0, xmmword [esp + 0x4658]
movsd xmm0, qword [esp + 0x4658]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4650], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x17c8], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x17c8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x17d0], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x17cc], eax
call fcn.00434890
mov ecx, dword [esp + 0x17cc]
mov dl, al
mov eax, dword [esp + 0x17d0]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4221bb
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x17b8], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x17b8]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x17bc], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x17bc]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x17c0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x17c0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4221b9
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x17ac], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x17ac]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x17b4], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x17b0], eax
call fcn.00434890
mov ecx, dword [esp + 0x17b0]
mov dl, al
mov eax, dword [esp + 0x17b4]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4222e6
jmp 0x4225c5
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x174c], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x174c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1750], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1750]
movsx ecx, cl
shl ecx, 2
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1754], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1754]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x422b98
mov eax, dword [esp + 0x4604]
mov ecx, dword [esp + 0x4600]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x173c], eax
mov dword [esp + 0x462c], 0xc0310000
mov dword [esp + 0x4628], 0
xor eax, eax
je 0x422667
add dl, dh
movups xmm0, xmmword [esp + 0x4628]
movsd xmm0, qword [esp + 0x4628]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x4620], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1740], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1740]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1748], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1744], eax
call fcn.00434890
mov ecx, dword [esp + 0x1744]
mov dl, al
mov eax, dword [esp + 0x1748]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x422797
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1730], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1730]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1734], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1734]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1738], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1738]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x422795
mov dword [esp + 0x4634], 0xa
jmp 0x4228c4
jmp 0x422797
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1724], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1724]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x172c], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1728], eax
call fcn.00434890
mov ecx, dword [esp + 0x1728]
mov dl, al
mov eax, dword [esp + 0x172c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4228c2
movsd xmm0, qword [esp + 0x4620]
movsd qword [esp + 0x1718], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1710], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1710]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1720], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x1714], eax
call fcn.00434890
mov ecx, dword [esp + 0x1714]
movsd xmm0, qword [esp + 0x1718]
mov dl, al
mov eax, dword [esp + 0x1720]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x4634], eax
jmp 0x4228c4
ud2
mov eax, dword [esp + 0x173c]
mov ecx, dword [esp + 0x4634]
add eax, ecx
mov dword [esp + 0x16fc], eax
mov eax, dword [esp + 0x4604]
mov ecx, dword [esp + 0x4600]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1700], eax
mov dword [esp + 0x4614], 0xc0310000
mov dword [esp + 0x4610], 0
xor eax, eax
je 0x42290f
mov eax, dword [esp + 0x4600]
add eax, 1
mov dword [esp + 0x4600], eax
jmp 0x420ddb
jmp 0x422bb0
mov ecx, dword [esp + 0x198c]
mov eax, dword [esp + 0x1990]
mov byte [eax], 1
add eax, 1
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__stricmp]
cmp eax, 0
sete al
mov byte [esp + 0x1997], al
mov al, byte [esp + 0x1997]
test al, 1
jne 0x422bee
jmp 0x42301e
mov eax, dword [esp + 0x2ac8]
lea ecx, [0x401e30]
mov dword [eax], ecx
lea ecx, [esp + 0x2983]
lea eax, [esp + 0x2982]
mov dword [esp], eax
call fcn.00434b20
sub esp, 4
lea eax, [esp + 0x2993]
mov dword [esp + 0x2e64], eax
lea eax, [esp + 0x2983]
mov dword [esp + 0x2e60], eax
lea eax, [esp + 0x3dec]
mov dword [esp + 0x3df4], eax
mov eax, dword [esp + 0x3df4]
mov dword [esp + 0x3e50], 0x30
mov ecx, dword [esp + 0x3e50]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3e4c], ecx
mov ecx, dword [esp + 0x3e4c]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3dec]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3de0]
mov dword [esp + 0x3e04], ecx
mov dword [esp + 0x3e00], eax
mov eax, dword [esp + 0x3e04]
mov ecx, dword [esp + 0x3e00]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3e00]
mov dword [esp + 0x3e54], ecx
mov ecx, dword [esp + 0x3e54]
mov edx, dword [esp + 0x3e54]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3df8], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3dfc], ecx
mov ecx, dword [esp + 0x3e00]
add ecx, dword [esp + 0x3df8]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3dfc]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3de0]
mov dword [esp + 0x3e08], eax
mov ecx, dword [esp + 0x3e08]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x422ea5
lea eax, [esp + 0x3de0]
mov dword [esp + 0x3e0c], eax
mov eax, dword [esp + 0x3e0c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3ddc], eax
mov eax, dword [esp + 0x3ddc]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3ddc], ecx
cmp eax, 0
je 0x422ea3
mov eax, dword [esp + 0x3ddc]
lea ecx, [esp + 0x3de0]
mov dword [esp + 0x3e24], ecx
mov dword [esp + 0x3e20], eax
mov eax, dword [esp + 0x3e24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3e20]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3e2c], 0x8b3014fc
mov dword [esp + 0x3e28], 0x35b07214
mov eax, dword [esp + 0x3e2c]
mov dword [esp + 0x3e1c], ecx
mov dword [esp + 0x3e18], eax
mov eax, dword [esp + 0x3e18]
mov dword [esp + 0x3e14], eax
mov eax, dword [esp + 0x3e1c]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3e1c], ecx
mov al, byte [eax]
mov byte [esp + 0x3e13], al
cmp byte [esp + 0x3e13], 0
je 0x422e76
mov ecx, dword [esp + 0x3e14]
mov al, byte [esp + 0x3e13]
mov dword [esp + 0x3e5c], ecx
mov byte [esp + 0x3e5b], al
mov eax, dword [esp + 0x3e5c]
mov dword [esp + 0x16cc], eax
movsx eax, byte [esp + 0x3e5b]
cmp eax, 0x41
jl 0x422e45
movsx eax, byte [esp + 0x3e5b]
cmp eax, 0x5a
jg 0x422e45
movsx eax, byte [esp + 0x3e5b]
or eax, 0x20
mov dword [esp + 0x16c8], eax
jmp 0x422e54
movsx eax, byte [esp + 0x3e5b]
mov dword [esp + 0x16c8], eax
mov eax, dword [esp + 0x16cc]
mov ecx, dword [esp + 0x16c8]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3e14], eax
jmp 0x422dc3
mov eax, dword [esp + 0x3e14]
mov dword [esp + 0x3e34], 0x8b3014fc
mov dword [esp + 0x3e30], 0x35b07214
mov ecx, dword [esp + 0x3e30]
cmp eax, ecx
je 0x422ed3
jmp 0x422d33
jmp 0x422ea5
lea eax, [esp + 0x3dec]
mov dword [esp + 0x3e48], eax
mov eax, dword [esp + 0x3e48]
mov ecx, dword [eax]
mov dword [esp + 0x3e60], ecx
mov ecx, dword [esp + 0x3e60]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x422c72
mov eax, dword [esp + 0x3ddc]
lea ecx, [esp + 0x3de0]
mov dword [esp + 0x3e44], ecx
mov dword [esp + 0x3e40], eax
mov eax, dword [esp + 0x3e44]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3e3c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3e38], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3e3c]
mov edx, dword [esp + 0x3e38]
mov esi, dword [esp + 0x3e40]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3df0], eax
mov eax, dword [esp + 0x3df0]
mov dword [esp + 0x16c0], eax
mov eax, dword [esp + 0x2e60]
mov dword [esp + 0x2ed8], eax
mov eax, dword [esp + 0x2ed8]
mov dword [esp + 0x2f94], eax
mov eax, dword [esp + 0x2f94]
mov dword [esp + 0x16c4], eax
mov dword [esp + 0x2fd0], eax
mov eax, dword [esp + 0x2fd0]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x423003
mov eax, dword [esp + 0x16c4]
mov dword [esp + 0x308c], eax
mov dword [esp + 0x3088], eax
mov eax, dword [esp + 0x308c]
mov dword [esp + 0x16bc], eax
mov dword [esp + 0x3084], 0
cmp dword [esp + 0x3084], 0x10
jge 0x423001
mov eax, dword [esp + 0x16bc]
mov ecx, dword [esp + 0x3088]
mov edx, dword [esp + 0x3084]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3084]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3084]
add eax, 1
mov dword [esp + 0x3084], eax
jmp 0x422fb6
jmp 0x423003
mov eax, dword [esp + 0x16c0]
mov ecx, dword [esp + 0x16c4]
mov dword [esp], ecx
call eax
sub esp, 4
jmp 0x43340a
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x16b0], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x16b0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x16b4], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x16b4]
movsx ecx, cl
shl ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x16b8], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x16b8]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4235fa
mov dword [esp + 0x2d6c], 0x401c0000
mov dword [esp + 0x2d68], 0
xor eax, eax
je 0x4230a7
add dl, dh
movups xmm0, xmmword [esp + 0x2d68]
movsd xmm0, qword [esp + 0x2d68]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2d60], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x16a4], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x16a4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x16ac], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x16a8], eax
call fcn.00434890
mov ecx, dword [esp + 0x16a8]
mov dl, al
mov eax, dword [esp + 0x16ac]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4231d7
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1698], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1698]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x169c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x169c]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x16a0], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x16a0]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4231d5
mov dword [esp + 0x2d74], 0xa
jmp 0x423304
jmp 0x4231d7
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x168c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x168c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1694], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1690], eax
call fcn.00434890
mov ecx, dword [esp + 0x1690]
mov dl, al
mov eax, dword [esp + 0x1694]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x423302
movsd xmm0, qword [esp + 0x2d60]
movsd qword [esp + 0x1680], xmm0
movsx eax, byte [0x4a3001]
mov dword [esp + 0x1678], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1678]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1688], eax
call fcn.00434880
movsx eax, al
mov dword [esp + 0x167c], eax
call fcn.00434890
mov ecx, dword [esp + 0x167c]
movsd xmm0, qword [esp + 0x1680]
mov dl, al
mov eax, dword [esp + 0x1688]
movsx edx, dl
imul ecx, edx
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4a3002]
xor edx, edx
div ecx
movsx ecx, byte [0x4a3003]
sub eax, ecx
movd xmm1, eax
movaps xmm2, xmmword [0x49a0c0]
por xmm1, xmm2
movsd xmm2, qword [0x49a0d0]
subsd xmm1, xmm2
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esp + 0x2d74], eax
jmp 0x423304
ud2
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x166c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x166c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1674], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 3
mov dword [esp + 0x1670], eax
call fcn.00434890
mov ecx, dword [esp + 0x1670]
mov dl, al
mov eax, dword [esp + 0x1674]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4235f5
mov dword [esp + 0x2d54], 0x40000000
mov dword [esp + 0x2d50], 0
xor eax, eax
je 0x423398
add dl, dh
movups xmm0, xmmword [esp + 0x2d50]
movsd xmm0, qword [esp + 0x2d50]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2d48], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1660], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1660]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1668], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1664], eax
call fcn.00434890
mov ecx, dword [esp + 0x1664]
mov dl, al
mov eax, dword [esp + 0x1668]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4234c8
jmp 0x433408
xor eax, eax
cmp dword [0x4a4f60], 0
mov byte [esp + 0x162f], al
je 0x425489
mov eax, dword [esp + 0x2a58]
mov dword [esp + 0x1624], eax
lea ecx, [esp + 0x2975]
lea eax, [esp + 0x2974]
mov dword [esp], eax
call fcn.00434b80
sub esp, 4
lea eax, [esp + 0x2975]
mov dword [esp + 0x2e68], eax
mov eax, dword [esp + 0x2e68]
mov dword [esp + 0x46f4], eax
mov eax, dword [esp + 0x46f4]
mov dword [esp + 0x1628], eax
test byte [eax], 1
jne 0x42545b
mov eax, dword [esp + 0x1628]
add eax, 1
mov dword [esp + 0x46fc], eax
mov dword [esp + 0x46f8], 0
mov eax, dword [esp + 0x46f8]
cmp eax, 0xc
jae 0x425459
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1618], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1618]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x161c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x161c]
movsx ecx, cl
imul ecx, ecx, 7
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1620], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1620]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x423c69
mov eax, dword [esp + 0x46fc]
mov ecx, dword [esp + 0x46f8]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1608], eax
mov dword [esp + 0x47e4], 0xc0310000
mov dword [esp + 0x47e0], 0
xor eax, eax
je 0x423738
add dl, dh
movups xmm0, xmmword [esp + 0x47e0]
movsd xmm0, qword [esp + 0x47e0]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x47d8], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x160c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x160c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1614], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1610], eax
call fcn.00434890
mov ecx, dword [esp + 0x1610]
mov dl, al
mov eax, dword [esp + 0x1614]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x423868
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x15fc], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x15fc]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1600], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1600]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1604], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1604]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x423866
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x15f0], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x15f0]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x15f8], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x15f4], eax
call fcn.00434890
mov ecx, dword [esp + 0x15f4]
mov dl, al
mov eax, dword [esp + 0x15f8]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x423993
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x158c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x158c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1594], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 9
mov dword [esp + 0x1590], eax
call fcn.00434890
mov ecx, dword [esp + 0x1590]
mov dl, al
mov eax, dword [esp + 0x1594]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x424e70
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1580], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1580]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1584], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1584]
movsx ecx, cl
shl ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1588], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1588]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x4242b5
mov eax, dword [esp + 0x46fc]
mov ecx, dword [esp + 0x46f8]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x1570], eax
mov dword [esp + 0x47b4], 0xc0300000
mov dword [esp + 0x47b0], 0
xor eax, eax
je 0x423d84
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x14f4], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x14f4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x14f8], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x14f8]
movsx ecx, cl
imul ecx, ecx, 3
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x14fc], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x14fc]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x424888
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x13e4], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x13e4]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x13e8], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x13e8]
movsx ecx, cl
shl ecx, 2
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x13ec], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x13ec]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x425443
mov eax, dword [esp + 0x46fc]
mov ecx, dword [esp + 0x46f8]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x13d4], eax
mov dword [esp + 0x4724], 0xc02c0000
mov dword [esp + 0x4720], 0
xor eax, eax
je 0x424f12
mov eax, dword [esp + 0x46f8]
add eax, 1
mov dword [esp + 0x46f8], eax
jmp 0x423686
jmp 0x42545b
mov ecx, dword [esp + 0x1624]
mov eax, dword [esp + 0x1628]
mov byte [eax], 1
add eax, 1
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__stricmp]
cmp eax, 0
sete al
mov byte [esp + 0x162f], al
mov al, byte [esp + 0x162f]
test al, 1
jne 0x425499
jmp 0x4258c9
mov eax, dword [esp + 0x2ac8]
lea ecx, [0x401e50]
mov dword [eax], ecx
lea ecx, [esp + 0x2963]
lea eax, [esp + 0x2962]
mov dword [esp], eax
call fcn.00434be0
sub esp, 4
lea eax, [esp + 0x2973]
mov dword [esp + 0x2e70], eax
lea eax, [esp + 0x2963]
mov dword [esp + 0x2e6c], eax
lea eax, [esp + 0x3e74]
mov dword [esp + 0x3e7c], eax
mov eax, dword [esp + 0x3e7c]
mov dword [esp + 0x3ed8], 0x30
mov ecx, dword [esp + 0x3ed8]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3ed4], ecx
mov ecx, dword [esp + 0x3ed4]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3e74]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3e68]
mov dword [esp + 0x3e8c], ecx
mov dword [esp + 0x3e88], eax
mov eax, dword [esp + 0x3e8c]
mov ecx, dword [esp + 0x3e88]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3e88]
mov dword [esp + 0x3edc], ecx
mov ecx, dword [esp + 0x3edc]
mov edx, dword [esp + 0x3edc]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3e80], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3e84], ecx
mov ecx, dword [esp + 0x3e88]
add ecx, dword [esp + 0x3e80]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3e84]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3e68]
mov dword [esp + 0x3e90], eax
mov ecx, dword [esp + 0x3e90]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x425750
lea eax, [esp + 0x3e68]
mov dword [esp + 0x3e94], eax
mov eax, dword [esp + 0x3e94]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x3e64], eax
mov eax, dword [esp + 0x3e64]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x3e64], ecx
cmp eax, 0
je 0x42574e
mov eax, dword [esp + 0x3e64]
lea ecx, [esp + 0x3e68]
mov dword [esp + 0x3eac], ecx
mov dword [esp + 0x3ea8], eax
mov eax, dword [esp + 0x3eac]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x3ea8]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x3eb4], 0x695a8df8
mov dword [esp + 0x3eb0], 0xdb4955f0
mov eax, dword [esp + 0x3eb4]
mov dword [esp + 0x3ea4], ecx
mov dword [esp + 0x3ea0], eax
mov eax, dword [esp + 0x3ea0]
mov dword [esp + 0x3e9c], eax
mov eax, dword [esp + 0x3ea4]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x3ea4], ecx
mov al, byte [eax]
mov byte [esp + 0x3e9b], al
cmp byte [esp + 0x3e9b], 0
je 0x425721
mov ecx, dword [esp + 0x3e9c]
mov al, byte [esp + 0x3e9b]
mov dword [esp + 0x3ee4], ecx
mov byte [esp + 0x3ee3], al
mov eax, dword [esp + 0x3ee4]
mov dword [esp + 0x1364], eax
movsx eax, byte [esp + 0x3ee3]
cmp eax, 0x41
jl 0x4256f0
movsx eax, byte [esp + 0x3ee3]
cmp eax, 0x5a
jg 0x4256f0
movsx eax, byte [esp + 0x3ee3]
mov dword [esp + 0x1360], eax
mov eax, dword [esp + 0x1364]
mov ecx, dword [esp + 0x1360]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x3e9c], eax
jmp 0x42566e
mov eax, dword [esp + 0x3e9c]
mov dword [esp + 0x3ebc], 0x695a8df8
mov dword [esp + 0x3eb8], 0xdb4955f0
mov ecx, dword [esp + 0x3eb8]
cmp eax, ecx
je 0x42577e
jmp 0x4255de
jmp 0x425750
lea eax, [esp + 0x3e74]
mov dword [esp + 0x3ed0], eax
mov eax, dword [esp + 0x3ed0]
mov ecx, dword [eax]
mov dword [esp + 0x3ee8], ecx
mov ecx, dword [esp + 0x3ee8]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x42551d
mov eax, dword [esp + 0x3e64]
lea ecx, [esp + 0x3e68]
mov dword [esp + 0x3ecc], ecx
mov dword [esp + 0x3ec8], eax
mov eax, dword [esp + 0x3ecc]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x3ec4], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x3ec0], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x3ec4]
mov edx, dword [esp + 0x3ec0]
mov esi, dword [esp + 0x3ec8]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x3e78], eax
mov eax, dword [esp + 0x3e78]
mov dword [esp + 0x1358], eax
mov eax, dword [esp + 0x2e6c]
mov dword [esp + 0x2ed4], eax
mov eax, dword [esp + 0x2ed4]
mov dword [esp + 0x2f98], eax
mov eax, dword [esp + 0x2f98]
mov dword [esp + 0x135c], eax
mov dword [esp + 0x2fcc], eax
mov eax, dword [esp + 0x2fcc]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x4258ae
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1348], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1348]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x134c], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x134c]
movsx ecx, cl
imul ecx, ecx, 6
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1350], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1350]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x425ea5
mov dword [esp + 0x2d3c], 0x40140000
mov dword [esp + 0x2d38], 0
xor eax, eax
je 0x425952
add dl, dh
movups xmm0, xmmword [esp + 0x2d38]
movsd xmm0, qword [esp + 0x2d38]
movsx eax, byte [0x4a32f4]
cvtsi2sd xmm2, eax
movsx eax, byte [section..data]
cvtsi2sd xmm1, eax
movaps xmm3, xmmword [0x49a0b0]
pxor xmm1, xmm3
addsd xmm1, xmm1
addsd xmm1, xmm2
mulsd xmm0, xmm1
movsd qword [esp + 0x2d30], xmm0
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x133c], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x133c]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1344], eax
call fcn.00434880
movsx eax, al
imul eax, eax, 0xa
mov dword [esp + 0x1340], eax
call fcn.00434890
mov ecx, dword [esp + 0x1340]
mov dl, al
mov eax, dword [esp + 0x1344]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x425a82
mov al, byte [section..data]
movsx eax, al
mov dword [esp + 0x1330], eax
call fcn.00434840
mov cl, al
mov eax, dword [esp + 0x1330]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x1334], eax
call fcn.00434850
mov cl, al
mov eax, dword [esp + 0x1334]
movsx ecx, cl
imul ecx, ecx, 5
mov dl, byte [0x4a4201]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov dword [esp + 0x1338], eax
call fcn.00434860
mov cl, al
mov eax, dword [esp + 0x1338]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x425a80
mov al, byte [0x4a3001]
movsx eax, al
mov dword [esp + 0x1324], eax
call fcn.00434870
mov cl, al
mov eax, dword [esp + 0x1324]
movsx ecx, cl
add eax, ecx
mov dword [esp + 0x132c], eax
call fcn.00434880
movsx eax, al
shl eax, 1
mov dword [esp + 0x1328], eax
call fcn.00434890
mov ecx, dword [esp + 0x1328]
mov dl, al
mov eax, dword [esp + 0x132c]
movsx edx, dl
imul ecx, edx
add eax, ecx
mov cl, byte [0x4a3002]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x4a3003]
movsx ecx, cl
sub eax, ecx
cmp eax, 0
je 0x425bad
xor eax, eax
cmp dword [0x4a4f60], 0
mov byte [esp + 0x12c7], al
je 0x427d34
mov eax, dword [esp + 0x2a58]
mov dword [esp + 0x12bc], eax
lea ecx, [esp + 0x2956]
lea eax, [esp + 0x2955]
mov dword [esp], eax
call fcn.00434c40
sub esp, 4
lea eax, [esp + 0x2956]
mov dword [esp + 0x2e74], eax
mov eax, dword [esp + 0x2e74]
mov dword [esp + 0x47ec], eax
mov eax, dword [esp + 0x47ec]
mov dword [esp + 0x12c0], eax
test byte [eax], 1
jne 0x427d06
mov eax, dword [esp + 0x12c0]
add eax, 1
mov dword [esp + 0x47f4], eax
mov dword [esp + 0x47f0], 0
mov eax, dword [esp + 0x47f0]
cmp eax, 0xb
jae 0x427d04
mov ecx, dword [esp + 0x12bc]
mov eax, dword [esp + 0x12c0]
mov byte [eax], 1
add eax, 1
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__stricmp]
cmp eax, 0
sete al
mov byte [esp + 0x12c7], al
mov al, byte [esp + 0x12c7]
test al, 1
jne 0x427d44
jmp 0x428174
mov eax, dword [esp + 0x2ac8]
lea ecx, [0x401e70]
mov dword [eax], ecx
lea ecx, [esp + 0x2944]
lea eax, [esp + 0x2943]
mov dword [esp], eax
call fcn.00434c90
sub esp, 4
lea eax, [esp + 0x2954]
mov dword [esp + 0x2e7c], eax
lea eax, [esp + 0x2944]
mov dword [esp + 0x2e78], eax
lea eax, [esp + 0x3efc]
mov dword [esp + 0x3f04], eax
mov eax, dword [esp + 0x3f04]
mov dword [esp + 0x3f60], 0x30
mov ecx, dword [esp + 0x3f60]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x3f5c], ecx
mov ecx, dword [esp + 0x3f5c]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x3efc]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x3ef0]
mov dword [esp + 0x3f14], ecx
mov dword [esp + 0x3f10], eax
mov eax, dword [esp + 0x3f14]
mov ecx, dword [esp + 0x3f10]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3f10]
mov dword [esp + 0x3f64], ecx
mov ecx, dword [esp + 0x3f64]
mov edx, dword [esp + 0x3f64]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x3f08], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x3f0c], ecx
mov ecx, dword [esp + 0x3f10]
add ecx, dword [esp + 0x3f08]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3f0c]
mov dword [eax + 8], ecx
lea eax, [esp + 0x3ef0]
mov dword [esp + 0x3f18], eax
mov ecx, dword [esp + 0x3f18]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x427ffb
jmp 0x43340a
jmp 0x43340c
jmp 0x43340e
jmp 0x433410
jmp 0x433412
jmp 0x433414
jmp 0x433416
jmp 0x433418
jmp 0x43341a
jmp 0x43341c
mov eax, dword [esp + 0x2af8]
add eax, 4
mov dword [esp + 0x2af8], eax
lea ecx, [esp + 0x28dc]
lea eax, [esp + 0x28db]
mov dword [esp], eax
call fcn.00434f50
sub esp, 4
lea eax, [esp + 0x28ec]
mov dword [esp + 0x2ea8], eax
lea eax, [esp + 0x28dc]
mov dword [esp + 0x2ea4], eax
lea eax, [esp + 0x4094]
mov dword [esp + 0x409c], eax
mov eax, dword [esp + 0x409c]
mov dword [esp + 0x40f8], 0x30
mov ecx, dword [esp + 0x40f8]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x40f4], ecx
mov ecx, dword [esp + 0x40f4]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x4094]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x4088]
mov dword [esp + 0x40ac], ecx
mov dword [esp + 0x40a8], eax
mov eax, dword [esp + 0x40ac]
mov ecx, dword [esp + 0x40a8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x40a8]
mov dword [esp + 0x40fc], ecx
mov ecx, dword [esp + 0x40fc]
mov edx, dword [esp + 0x40fc]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x40a0], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x40a4], ecx
mov ecx, dword [esp + 0x40a8]
add ecx, dword [esp + 0x40a0]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x40a4]
mov dword [eax + 8], ecx
lea eax, [esp + 0x4088]
mov dword [esp + 0x40b0], eax
mov ecx, dword [esp + 0x40b0]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x4336c2
lea eax, [esp + 0x4088]
mov dword [esp + 0x40b4], eax
mov eax, dword [esp + 0x40b4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x4084], eax
mov eax, dword [esp + 0x4084]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x4084], ecx
cmp eax, 0
je 0x4336c0
mov eax, dword [esp + 0x4084]
lea ecx, [esp + 0x4088]
mov dword [esp + 0x40cc], ecx
mov dword [esp + 0x40c8], eax
mov eax, dword [esp + 0x40cc]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x40c8]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x40d4], 0x1d2114a7
mov dword [esp + 0x40d0], 0x683f7d43
mov eax, dword [esp + 0x40d4]
mov dword [esp + 0x40c4], ecx
mov dword [esp + 0x40c0], eax
mov eax, dword [esp + 0x40c0]
mov dword [esp + 0x40bc], eax
mov eax, dword [esp + 0x40c4]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x40c4], ecx
mov al, byte [eax]
mov byte [esp + 0x40bb], al
cmp byte [esp + 0x40bb], 0
je 0x433693
mov ecx, dword [esp + 0x40bc]
mov al, byte [esp + 0x40bb]
mov dword [esp + 0x4104], ecx
mov byte [esp + 0x4103], al
mov eax, dword [esp + 0x4104]
mov dword [esp + 0x44], eax
movsx eax, byte [esp + 0x4103]
cmp eax, 0x41
jl 0x43366b
movsx eax, byte [esp + 0x4103]
cmp eax, 0x5a
jg 0x43366b
movsx eax, byte [esp + 0x4103]
or eax, 0x20
mov dword [esp + 0x40], eax
jmp 0x433677
movsx eax, byte [esp + 0x4103]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x40bc], eax
jmp 0x4335f3
mov eax, dword [esp + 0x40bc]
mov dword [esp + 0x40dc], 0x1d2114a7
mov dword [esp + 0x40d8], 0x683f7d43
mov ecx, dword [esp + 0x40d8]
cmp eax, ecx
je 0x4336f0
jmp 0x433563
jmp 0x4336c2
lea eax, [esp + 0x4094]
mov dword [esp + 0x40f0], eax
mov eax, dword [esp + 0x40f0]
mov ecx, dword [eax]
mov dword [esp + 0x4108], ecx
mov ecx, dword [esp + 0x4108]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4334a2
mov eax, dword [esp + 0x4084]
lea ecx, [esp + 0x4088]
mov dword [esp + 0x40ec], ecx
mov dword [esp + 0x40e8], eax
mov eax, dword [esp + 0x40ec]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x40e4], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x40e0], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x40e4]
mov edx, dword [esp + 0x40e0]
mov esi, dword [esp + 0x40e8]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x4098], eax
mov eax, dword [esp + 0x4098]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x2ea4]
mov dword [esp + 0x2ec4], eax
mov eax, dword [esp + 0x2ec4]
mov dword [esp + 0x2fa8], eax
mov eax, dword [esp + 0x2fa8]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x2fbc], eax
mov eax, dword [esp + 0x2fbc]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x433811
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x3050], eax
mov dword [esp + 0x304c], eax
mov eax, dword [esp + 0x3050]
mov dword [esp + 0x34], eax
mov dword [esp + 0x3048], 0
cmp dword [esp + 0x3048], 0x10
jge 0x43380f
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x304c]
mov edx, dword [esp + 0x3048]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3048]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3048]
add eax, 1
mov dword [esp + 0x3048], eax
jmp 0x4337c7
jmp 0x433811
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2ae0]
add eax, 4
mov dword [esp + 0x2ae0], eax
lea ecx, [esp + 0x28ca]
lea eax, [esp + 0x28c9]
mov dword [esp], eax
call fcn.00434fb0
sub esp, 4
lea eax, [esp + 0x28da]
mov dword [esp + 0x2eb0], eax
lea eax, [esp + 0x28ca]
mov dword [esp + 0x2eac], eax
lea eax, [esp + 0x411c]
mov dword [esp + 0x4124], eax
mov eax, dword [esp + 0x4124]
mov dword [esp + 0x4180], 0x30
mov ecx, dword [esp + 0x4180]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x417c], ecx
mov ecx, dword [esp + 0x417c]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x411c]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x4110]
mov dword [esp + 0x4134], ecx
mov dword [esp + 0x4130], eax
mov eax, dword [esp + 0x4134]
mov ecx, dword [esp + 0x4130]
mov dword [eax], ecx
mov ecx, dword [esp + 0x4130]
mov dword [esp + 0x4184], ecx
mov ecx, dword [esp + 0x4184]
mov edx, dword [esp + 0x4184]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x4128], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x412c], ecx
mov ecx, dword [esp + 0x4130]
add ecx, dword [esp + 0x4128]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x412c]
mov dword [eax + 8], ecx
lea eax, [esp + 0x4110]
mov dword [esp + 0x4138], eax
mov ecx, dword [esp + 0x4138]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x433ac7
lea eax, [esp + 0x4110]
mov dword [esp + 0x413c], eax
mov eax, dword [esp + 0x413c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x410c], eax
mov eax, dword [esp + 0x410c]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x410c], ecx
cmp eax, 0
je 0x433ac5
mov eax, dword [esp + 0x410c]
lea ecx, [esp + 0x4110]
mov dword [esp + 0x4154], ecx
mov dword [esp + 0x4150], eax
mov eax, dword [esp + 0x4154]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x4150]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x415c], 0x907d7625
mov dword [esp + 0x4158], 0x3e8d6545
mov eax, dword [esp + 0x415c]
mov dword [esp + 0x414c], ecx
mov dword [esp + 0x4148], eax
mov eax, dword [esp + 0x4148]
mov dword [esp + 0x4144], eax
mov eax, dword [esp + 0x414c]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x414c], ecx
mov al, byte [eax]
mov byte [esp + 0x4143], al
cmp byte [esp + 0x4143], 0
je 0x433a98
mov ecx, dword [esp + 0x4144]
mov al, byte [esp + 0x4143]
mov dword [esp + 0x418c], ecx
mov byte [esp + 0x418b], al
mov eax, dword [esp + 0x418c]
mov dword [esp + 0x30], eax
movsx eax, byte [esp + 0x418b]
cmp eax, 0x41
jl 0x433a70
movsx eax, byte [esp + 0x418b]
cmp eax, 0x5a
jg 0x433a70
movsx eax, byte [esp + 0x418b]
or eax, 0x20
mov dword [esp + 0x2c], eax
jmp 0x433a7c
movsx eax, byte [esp + 0x418b]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x4144], eax
jmp 0x4339f8
mov eax, dword [esp + 0x4144]
mov dword [esp + 0x4164], 0x907d7625
mov dword [esp + 0x4160], 0x3e8d6545
mov ecx, dword [esp + 0x4160]
cmp eax, ecx
je 0x433af5
jmp 0x433968
jmp 0x433ac7
lea eax, [esp + 0x411c]
mov dword [esp + 0x4178], eax
mov eax, dword [esp + 0x4178]
mov ecx, dword [eax]
mov dword [esp + 0x4190], ecx
mov ecx, dword [esp + 0x4190]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x4338a7
mov eax, dword [esp + 0x410c]
lea ecx, [esp + 0x4110]
mov dword [esp + 0x4174], ecx
mov dword [esp + 0x4170], eax
mov eax, dword [esp + 0x4174]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x416c], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x4168], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x416c]
mov edx, dword [esp + 0x4168]
mov esi, dword [esp + 0x4170]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x4120], eax
mov eax, dword [esp + 0x4120]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x2eac]
mov dword [esp + 0x2ec0], eax
mov eax, dword [esp + 0x2ec0]
mov dword [esp + 0x2fac], eax
mov eax, dword [esp + 0x2fac]
mov dword [esp + 0x28], eax
mov dword [esp + 0x2fb8], eax
mov eax, dword [esp + 0x2fb8]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x433c16
mov eax, dword [esp + 0x28]
mov dword [esp + 0x3044], eax
mov dword [esp + 0x3040], eax
mov eax, dword [esp + 0x3044]
mov dword [esp + 0x20], eax
mov dword [esp + 0x303c], 0
cmp dword [esp + 0x303c], 0x10
jge 0x433c14
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x3040]
mov edx, dword [esp + 0x303c]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x303c]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x303c]
add eax, 1
mov dword [esp + 0x303c], eax
jmp 0x433bcc
jmp 0x433c16
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov dword [esp], ecx
call eax
sub esp, 4
jmp 0x414cc7
lea ecx, [esp + 0x28b8]
lea eax, [esp + 0x28b7]
mov dword [esp], eax
call fcn.00435010
sub esp, 4
lea eax, [esp + 0x28c8]
mov dword [esp + 0x2eb8], eax
lea eax, [esp + 0x28b8]
mov dword [esp + 0x2eb4], eax
lea eax, [esp + 0x41a4]
mov dword [esp + 0x41ac], eax
mov eax, dword [esp + 0x41ac]
mov dword [esp + 0x4208], 0x30
mov ecx, dword [esp + 0x4208]
mov ecx, dword fs:[ecx]
mov dword [esp + 0x4204], ecx
mov ecx, dword [esp + 0x4204]
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov dword [eax], ecx
mov eax, dword [esp + 0x41a4]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x4198]
mov dword [esp + 0x41bc], ecx
mov dword [esp + 0x41b8], eax
mov eax, dword [esp + 0x41bc]
mov ecx, dword [esp + 0x41b8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x41b8]
mov dword [esp + 0x420c], ecx
mov ecx, dword [esp + 0x420c]
mov edx, dword [esp + 0x420c]
mov edx, dword [edx + 0x3c]
mov esi, dword [ecx + edx + 0x78]
mov dword [esp + 0x41b0], esi
mov ecx, dword [ecx + edx + 0x7c]
mov dword [esp + 0x41b4], ecx
mov ecx, dword [esp + 0x41b8]
add ecx, dword [esp + 0x41b0]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x41b4]
mov dword [eax + 8], ecx
lea eax, [esp + 0x4198]
mov dword [esp + 0x41c0], eax
mov ecx, dword [esp + 0x41c0]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx]
je 0x433ec0
lea eax, [esp + 0x4198]
mov dword [esp + 0x41c4], eax
mov eax, dword [esp + 0x41c4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x4194], eax
mov eax, dword [esp + 0x4194]
mov ecx, eax
add ecx, 0xffffffff
mov dword [esp + 0x4194], ecx
cmp eax, 0
je 0x433ebe
mov eax, dword [esp + 0x4194]
lea ecx, [esp + 0x4198]
mov dword [esp + 0x41dc], ecx
mov dword [esp + 0x41d8], eax
mov eax, dword [esp + 0x41dc]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x20]
mov eax, ecx
add eax, edx
mov edx, dword [esp + 0x41d8]
mov eax, dword [eax + edx*4]
add ecx, eax
mov dword [esp + 0x41e4], 0x63d9317e
mov dword [esp + 0x41e0], 0x67c14a02
mov eax, dword [esp + 0x41e4]
mov dword [esp + 0x41d4], ecx
mov dword [esp + 0x41d0], eax
mov eax, dword [esp + 0x41d0]
mov dword [esp + 0x41cc], eax
mov eax, dword [esp + 0x41d4]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x41d4], ecx
mov al, byte [eax]
mov byte [esp + 0x41cb], al
cmp byte [esp + 0x41cb], 0
je 0x433e91
mov ecx, dword [esp + 0x41cc]
mov al, byte [esp + 0x41cb]
mov dword [esp + 0x4214], ecx
mov byte [esp + 0x4213], al
mov eax, dword [esp + 0x4214]
mov dword [esp + 0x1c], eax
movsx eax, byte [esp + 0x4213]
cmp eax, 0x41
jl 0x433e69
movsx eax, byte [esp + 0x4213]
cmp eax, 0x5a
jg 0x433e69
movsx eax, byte [esp + 0x4213]
or eax, 0x20
mov dword [esp + 0x18], eax
jmp 0x433e75
movsx eax, byte [esp + 0x4213]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
xor eax, ecx
imul eax, eax, 0x1000193
mov dword [esp + 0x41cc], eax
jmp 0x433df1
mov eax, dword [esp + 0x41cc]
mov dword [esp + 0x41ec], 0x63d9317e
mov dword [esp + 0x41e8], 0x67c14a02
mov ecx, dword [esp + 0x41e8]
cmp eax, ecx
je 0x433eee
jmp 0x433d61
jmp 0x433ec0
lea eax, [esp + 0x41a4]
mov dword [esp + 0x4200], eax
mov eax, dword [esp + 0x4200]
mov ecx, dword [eax]
mov dword [esp + 0x4218], ecx
mov ecx, dword [esp + 0x4218]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x433ca0
mov eax, dword [esp + 0x4194]
lea ecx, [esp + 0x4198]
mov dword [esp + 0x41fc], ecx
mov dword [esp + 0x41f8], eax
mov eax, dword [esp + 0x41fc]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x1c]
mov dword [esp + 0x41f4], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add ecx, dword [edx + 0x24]
mov dword [esp + 0x41f0], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x41f4]
mov edx, dword [esp + 0x41f0]
mov esi, dword [esp + 0x41f8]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [esp + 0x41a8], eax
mov eax, dword [esp + 0x41a8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x2eb4]
mov dword [esp + 0x2ebc], eax
mov eax, dword [esp + 0x2ebc]
mov dword [esp + 0x2fb0], eax
mov eax, dword [esp + 0x2fb0]
mov dword [esp + 0x14], eax
mov dword [esp + 0x2fb4], eax
mov eax, dword [esp + 0x2fb4]
movsx eax, byte [eax + 0xf]
cmp eax, 0
je 0x43400f
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3038], eax
mov dword [esp + 0x3034], eax
mov eax, dword [esp + 0x3038]
mov dword [esp + 0xc], eax
mov dword [esp + 0x3030], 0
cmp dword [esp + 0x3030], 0x10
jge 0x43400d
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x3034]
mov edx, dword [esp + 0x3030]
movsx ecx, byte [ecx + edx]
xor ecx, 0xffffffc2
xor ecx, 0xca
mov dl, cl
mov ecx, dword [esp + 0x3030]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x3030]
add eax, 1
mov dword [esp + 0x3030], eax
jmp 0x433fc5
jmp 0x43400f
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp], ecx
call eax
sub esp, 4
mov eax, dword [esp + 0x2b78]
add eax, 0x14
mov dword [esp + 0x2b78], eax
jmp 0x412b33
mov dword [esp + 0x28b0], 0
cmp dword [esp + 0x28b0], 0x2d
jae 0x434054
mov byte [esp + 0x2be3], 1
jmp 0x434056
ud2
mov al, byte [esp + 0x2be3]
and al, 1
lea esp, [ebp - 4]
pop esi
pop ebp
ret