Function at 0x45e569
Capabilities:
Authenticate hmac
Parse credit card information
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x62c
movaps xmm0, xmmword [section..rdata]
movups xmmword [esp + 0x510], xmm0
mov dword [esp + 0x520], 0x5bbebca0
xorps xmm0, xmm0
movups xmmword [esp + 0x524], xmm0
call fcn.0046d640
mov ebp, dword [eax]
call fcn.0046d646
mov esi, dword [eax]
xor eax, eax
cmp ebp, eax
ja 0x401b10
movzx edx, byte [esp + eax + 0x510]
lea edi, [esi + 1]
cmp ebp, edi
jae 0x4016a9
lea ecx, [eax + 0xdb0a]
lea ebx, [eax + edx]
add ebx, 0xdb0a
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xba
cmp esi, eax
ja 0x401b1b
lea ecx, [esi + 6]
cmp ebp, ecx
jae 0x4016c8
lea ecx, [eax + 0x11f7d2]
lea ebx, [eax + edx]
add ebx, 0x11f7d2
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x42
mov ecx, esi
mov esi, edi
lea edi, [ecx + ebp]
mov dword [esp], ecx
add ecx, 0x20
cmp edi, eax
jbe 0x401778
cmp ebp, ecx
jne 0x401857
lea edi, [eax + 0x634088]
lea ebx, [eax + edx]
add ebx, 0x634088
and edi, edx
mov cl, 0x48
mov esi, dword [esp]
jmp 0x401803
jne 0x4016ea
lea ecx, [eax + 0x2911e]
lea ebx, [eax + edx]
add ebx, 0x2911e
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x2e
jmp 0x40176f
cmp ebp, edi
jne 0x4017e5
lea ecx, [eax + 0x13ade6]
lea ebx, [eax + edx]
add ebx, 0x13ade6
and ecx, edx
mov byte [esp], 0xb6
jmp 0x4017ba
lea ecx, [esi + 2]
cmp ebp, ecx
jne 0x40182f
mov dword [esp + 4], ebp
lea ebp, [eax + 0x5fd46]
lea ebx, [eax + edx]
add ebx, 0x5fd46
and ebp, edx
mov cl, 0x16
add ebp, ebp
sub ebx, ebp
add bl, cl
lea ebp, [eax + 0x5b8d2e]
lea ecx, [edx + eax]
add ecx, 0x5b8d2e
and ebp, edx
add ebp, ebp
sub ecx, ebp
add cl, 0xbe
mov byte [esp + eax + 0x510], cl
movzx ecx, cl
not esi
add esi, eax
sub esi, ecx
mov eax, esi
mov ebp, dword [esp + 4]
lea esi, [eax + 0x5c6838]
lea ecx, [eax + edx]
add ecx, 0x5c6838
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0x78
mov byte [esp + eax + 0x510], cl
sub eax, ebp
inc ebp
movzx edx, byte [esp + eax + 0x50e]
add eax, 0xfffffffe
mov esi, edi
add edx, esi
add eax, edx
jmp 0x401a09
cmp ebp, ecx
mov edi, esi
jae 0x401884
lea ecx, [eax + 0xdb0a]
lea ebx, [eax + edx]
add ebx, 0xdb0a
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xba
mov esi, dword [esp]
cmp ebp, edi
jne 0x4018f9
lea ecx, [eax + 0x35e776]
lea ebx, [eax + edx]
add ebx, 0x35e776
and ecx, edx
mov byte [esp], 0xc6
add ecx, ecx
sub ebx, ecx
add bl, byte [esp]
lea esi, [eax + 0x582106]
lea ecx, [edx + eax]
add ecx, 0x582106
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0xd6
mov byte [esp + eax + 0x510], cl
jmp 0x40191e
lea ecx, [esi + 2]
cmp ebp, ecx
jne 0x4018ac
lea edi, [eax + 0x18d022]
lea ebx, [eax + edx]
add ebx, 0x18d022
and edi, edx
mov cl, 0x12
add edi, edi
sub ebx, edi
add bl, cl
lea edi, [eax + 0x59d71a]
lea ecx, [edx + eax]
add ecx, 0x59d71a
and edi, edx
add edi, edi
sub ecx, edi
add cl, bl
add cl, 0x4a
mov byte [esp + eax + 0x510], cl
jmp 0x401a00
lea ecx, [esi + 4]
cmp ebp, ecx
jne 0x4018d4
lea ecx, [eax + 0x9696e]
lea ebx, [eax + edx]
add ebx, 0x9696e
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xfe
jmp 0x401a00
mov edi, esi
mov esi, dword [esp]
lea ecx, [esi + 0xa]
cmp ebp, ecx
jne 0x401926
lea ecx, [eax + 0x64f69c]
lea ebx, [eax + edx]
add ebx, 0x64f69c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xbc
jmp 0x401a00
cmp ebp, edi
mov esi, dword [esp]
jne 0x40194e
lea ecx, [eax + 0x23efa4]
lea ebx, [eax + edx]
add ebx, 0x23efa4
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x84
jmp 0x40176f
lea ecx, [esi + 3]
cmp ebp, ecx
jne 0x401978
lea ecx, [eax + 0x1a8636]
lea ebx, [eax + edx]
add ebx, 0x1a8636
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x86
jmp 0x401a00
lea ecx, [esi + 6]
cmp ebp, ecx
jne 0x40164a
lea ecx, [eax + 0xcd596]
lea ebx, [eax + edx]
add ebx, 0xcd596
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe6
jmp 0x40191c
lea ecx, [esi + 2]
cmp ebp, ecx
jne 0x40199d
lea ecx, [eax + 0x39539e]
lea ebx, [eax + edx]
add ebx, 0x39539e
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xae
mov edi, esi
dec eax
mov esi, edi
jmp 0x401a09
lea ecx, [esi + 8]
cmp ebp, ecx
jne 0x4019be
lea ecx, [eax + 0x66acb0]
lea ebx, [eax + edx]
add ebx, 0x66acb0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x30
jmp 0x401a02
lea ecx, [esi + 2]
cmp ebp, ecx
jne 0x4019e1
lea ecx, [eax + 0x25a5b8]
lea ebx, [eax + edx]
add ebx, 0x25a5b8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf8
mov edi, esi
jmp 0x401740
lea ecx, [esi + 5]
cmp ebp, ecx
jne 0x401671
lea ecx, [eax + 0x1c3c4a]
lea ebx, [eax + edx]
add ebx, 0x1c3c4a
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xfa
jmp 0x401a02
lea ecx, [esi + 5]
cmp ebp, ecx
jne 0x401a18
lea ecx, [eax + 0x3e75da]
lea ebx, [eax + edx]
add ebx, 0x3e75da
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xa
jmp 0x401a02
lea ecx, [esi + 5]
cmp ebp, ecx
jne 0x401a3b
mov dword [esp + 4], ebp
lea ebp, [eax + 0x6862c4]
lea ebx, [eax + edx]
add ebx, 0x6862c4
and ebp, edx
mov cl, 0xa4
jmp 0x40170c
lea ecx, [esi + 3]
cmp ebp, ecx
jne 0x401a5f
lea ecx, [eax + 0x2ac7f4]
lea ebx, [eax + edx]
add ebx, 0x2ac7f4
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x54
add ebp, esi
movzx ecx, bl
not ecx
add eax, ecx
inc eax
cmp eax, 0x24
jb 0x40161b
jmp 0x401b17
lea ecx, [esi + 3]
cmp ebp, ecx
jne 0x401a84
mov dword [esp + 4], ebp
lea ebp, [eax + 0x402bee]
lea ebx, [eax + edx]
add ebx, 0x402bee
and ebp, edx
mov cl, 0x7e
jmp 0x40170c
lea ecx, [esi + 3]
cmp ebp, ecx
jne 0x401aa3
lea ecx, [eax + 0x6a18d8]
lea ebx, [eax + edx]
add ebx, 0x6a18d8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x18
jmp 0x401971
lea ecx, [esi + 8]
cmp ebp, ecx
jne 0x40179d
lea ecx, [eax + 0x31a044]
lea ebx, [eax + edx]
add ebx, 0x31a044
and ecx, edx
mov byte [esp], 0x24
jmp 0x4017ba
lea ecx, [esi + 4]
cmp ebp, ecx
jne 0x401ac4
lea edi, [eax + 0x506dac]
lea ebx, [eax + edx]
add ebx, 0x506dac
and edi, edx
mov cl, 0x4c
jmp 0x401803
cmp ebp, edi
jne 0x401af4
lea ecx, [eax + 0x6bceec]
lea ebx, [eax + edx]
add ebx, 0x6bceec
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x8c
jmp 0x40176f
lea ecx, [esi + 7]
cmp ebp, ecx
jne 0x401ae8
lea ecx, [eax + 0x5223c0]
lea ebx, [eax + edx]
add ebx, 0x5223c0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc0
jmp 0x40191c
mov byte [esp + eax + 0x510], bl
jmp 0x401a09
lea ebx, [eax + edx]
add ebx, 0x70161e
add eax, 0x70161e
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x2e
jmp 0x40160b
mov eax, 0xd405c2
jmp 0x401b20
xor eax, eax
jmp 0x401b20
mov eax, 0x1532ab8
lea esi, [esp + eax]
add esi, 0x510
xor edi, edi
mov dword [0x478180], edi
mov dword [0x478190], edi
mov dword [0x478194], 0xf
mov byte [0x478180], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478180
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473010]
movups xmmword [esp + 0x84], xmm0
mov dword [esp + 0x94], 0x3f64939d
mov dword [esp + 0x98], 0xd3dfeddd
mov byte [esp + 0x9c], 0x7e
mov dword [esp + 0xa1], edi
mov dword [esp + 0x9d], edi
mov word [esp + 0xa5], 0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x401f1c
mov bl, byte [esp + eax + 0x84]
movzx edx, bl
lea edi, [ecx + 1]
cmp esi, edi
jae 0x401c19
cmp ecx, eax
ja 0x401f27
lea ebp, [ecx + 8]
mov dword [esp], ebp
cmp esi, ebp
jae 0x401c4e
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x401c7d
cmp esi, edi
je 0x401c56
cmp esi, dword [esp]
je 0x401c75
lea edi, [ecx + 6]
cmp esi, edi
jne 0x401ba2
lea edi, [eax - 0x17bf5ee8]
lea ebx, [eax + edx]
add ebx, 0xe840a118
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x58
jmp 0x401dfa
je 0x401cde
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x401c86
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x401da9
lea edi, [eax + 0x7dd2b96f]
lea ebx, [eax + edx]
add ebx, 0x7dd2b96f
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xf7
jmp 0x401df8
cmp esi, edi
jne 0x401ce8
lea ebx, [eax + 0x6b9ddf9b]
lea ecx, [eax + edx]
add ecx, 0x6b9ddf9b
and ebx, edx
add ebx, ebx
sub ecx, ebx
add cl, 0xc3
mov byte [esp + eax + 0x84], cl
dec eax
mov ecx, edi
jmp 0x401e01
cmp ebp, 1
jne 0x401d0d
lea ebp, [eax + 0x6ad33a4f]
lea ebx, [eax + edx]
add ebx, 0x6ad33a4f
and ebp, edx
add ebp, ebp
sub ebx, ebp
add bl, 0xd7
mov byte [esp + eax + 0x84], bl
movzx ebx, bl
not ecx
add ecx, eax
sub ecx, ebx
mov eax, ecx
mov ecx, edi
lea edi, [eax - 0x155f6f04]
lea ebx, [eax + edx]
add ebx, 0xeaa090fc
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x1c
mov byte [esp + eax + 0x84], bl
sub eax, esi
inc esi
mov bl, byte [esp + eax + 0x82]
add eax, 0xfffffffe
movzx edx, bl
add edx, ecx
jmp 0x401dff
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x401d84
lea edi, [eax + 0x7a42d199]
lea ebx, [eax + edx]
add ebx, 0x7a42d199
and edi, edx
mov byte [esp], 0xd1
jmp 0x401dc9
lea ebp, [ecx + 2]
cmp esi, ebp
jbe 0x401e10
mov dword [esp + 8], ebp
lea ebp, [eax + 0x73eda739]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0xc]
add edx, eax
add edx, 0x73eda739
mov dword [esp + 4], edx
and ebp, dword [esp + 0xc]
add ebp, ebp
sub dword [esp + 4], ebp
mov edx, dword [esp + 4]
add dl, 0x71
mov dword [esp + 4], edx
cmp esi, edi
mov ebp, dword [esp + 8]
je 0x401cde
cmp esi, ebp
mov edx, dword [esp + 0xc]
je 0x401c86
lea ebx, [ecx + 3]
cmp esi, ebx
jne 0x401e63
lea edi, [eax - 0x1234d9d4]
lea ebx, [eax + edx]
add ebx, 0xedcb262c
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xcc
jmp 0x401df8
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x401e23
lea edi, [eax + 0x79782c4d]
lea ebx, [eax + edx]
add ebx, 0x79782c4d
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xe5
jmp 0x401dfa
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x401bcb
lea edi, [eax + 0x7d6d66c9]
lea ebx, [eax + edx]
add ebx, 0x7d6d66c9
and edi, edx
mov byte [esp], 0x81
add edi, edi
sub ebx, edi
add bl, byte [esp]
mov dword [esp], ebx
lea edi, [eax + 0x6b388cf5]
lea ebx, [edx + eax]
add ebx, 0x6b388cf5
and edi, edx
add edi, edi
sub ebx, edi
add bl, byte [esp]
add bl, 0x4d
mov byte [esp + eax + 0x84], bl
mov ebx, dword [esp]
add esi, ecx
movzx edx, bl
not edx
add eax, edx
inc eax
cmp eax, 0x23
jb 0x401bb2
jmp 0x401f23
cmp esi, edi
je 0x401c56
cmp esi, ebp
jne 0x401e3e
mov edi, ecx
jmp 0x401c75
lea ebp, [ecx + 7]
cmp esi, ebp
je 0x401c86
lea ebp, [ecx + 6]
cmp esi, ebp
jne 0x401bdd
jmp 0x401cb2
mov dword [esp + 8], ebp
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x401e84
lea edi, [eax + 0x71f309fb]
lea ebx, [eax + edx]
add ebx, 0x71f309fb
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x23
jmp 0x401df8
lea ebx, [ecx + 4]
cmp esi, ebx
jne 0x401ea8
lea edi, [eax - 0x129a2c7a]
lea ebx, [eax + edx]
add ebx, 0xed65d386
and edi, edx
mov byte [esp], 0x56
jmp 0x401dc9
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x401ed5
lea edi, [eax + 0x718db755]
lea ebx, [eax + edx]
add ebx, 0x718db755
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xad
jmp 0x401dfa
lea ebx, [ecx + 5]
cmp esi, ebx
je 0x401c75
cmp ecx, 1
ja 0x401c56
cmp esi, dword [esp]
je 0x401c56
mov edx, dword [esp + 4]
mov byte [esp + eax + 0x84], dl
jmp 0x401e01
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x401c86
lea ebp, [ecx + 7]
cmp esi, ebp
je 0x401cde
lea ebp, [eax + 0x7fcd56ad]
mov dword [esp + 0x10], ebp
lea ebp, [eax + edx]
add ebp, 0x7fcd56ad
mov dword [esp + 4], ebp
mov dword [esp + 0xc], edx
mov ebp, dword [esp + 0x10]
and ebp, edx
add ebp, ebp
mov edx, dword [esp + 4]
sub edx, ebp
add dl, 0x45
jmp 0x401d47
mov eax, 0x4392e9
jmp 0x401f2c
xor eax, eax
jmp 0x401f2c
mov eax, 0x1763c3c
lea esi, [esp + eax]
add esi, 0x84
xor edi, edi
mov dword [0x478198], edi
mov dword [0x4781a8], edi
mov dword [0x4781ac], 0xf
mov byte [0x478198], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478198
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [str.Wuom__dqudtblF]
movups xmmword [esp + 0x1b8], xmm0
mov dword [esp + 0x1c8], 0x7c6a7e66
mov dword [esp + 0x1cc], 0x706c4c32
mov dword [esp + 0x1d0], 0x7f776970
mov byte [esp + 0x1d4], 0x1a
mov dword [esp + 0x1d9], edi
mov dword [esp + 0x1d5], edi
mov dword [esp + 0x1df], edi
mov dword [esp + 0x1db], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x402280
mov dl, byte [esp + eax + 0x1b8]
movzx edi, dl
lea ebx, [ecx + 1]
cmp esi, ebx
jae 0x40203e
cmp ecx, eax
ja 0x40228b
lea ebp, [ecx + 8]
cmp esi, ebp
jae 0x402073
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x4020ae
lea ebp, [ecx + 5]
cmp esi, ebp
je 0x402116
lea ebp, [ecx + 0x28]
cmp esi, ebp
je 0x4021c2
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x4021f1
lea ebx, [eax - 0x32ce2f8c]
lea edx, [eax + edi]
add edx, 0xcd31d074
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xd4
jmp 0x402159
je 0x40210b
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x4020b3
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x40213a
lea ebx, [eax + 0x1a142c0b]
lea edx, [eax + edi]
add edx, 0x1a142c0b
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xb3
jmp 0x40217a
cmp esi, ebx
je 0x402116
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x4021c2
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x4021d6
lea ebx, [eax + 0x60c47c1f]
lea edx, [eax + edi]
add edx, 0x60c47c1f
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x27
jmp 0x40217a
cmp ebp, 0x40
jne 0x402112
lea ebp, [eax - 0x5f6a5395]
lea edx, [eax + edi]
add edx, 0xa095ac6b
and ebp, edi
add ebp, ebp
sub edx, ebp
add dl, 0x13
mov byte [esp + eax + 0x1b8], dl
movzx edx, dl
not ecx
add ecx, eax
sub ecx, edx
mov eax, ecx
mov ecx, ebx
lea ebx, [eax + 0x1751b06c]
lea edx, [eax + edi]
add edx, 0x1751b06c
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xc
mov byte [esp + eax + 0x1b8], dl
sub eax, esi
inc esi
mov dl, byte [esp + eax + 0x1b6]
add eax, 0xfffffffe
movzx edx, dl
add edx, ecx
jmp 0x402181
cmp esi, ebx
jne 0x402185
lea edx, [eax - 0x3a5a6399]
lea ecx, [eax + edi]
add ecx, 0xc5a59c67
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x2f
mov byte [esp + eax + 0x1b8], cl
jmp 0x4021c4
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x4021b7
lea ebx, [eax + 0x78c340d]
lea edx, [eax + edi]
add edx, 0x78c340d
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xa5
lea ebp, [eax - 0x4ce25b97]
lea ebx, [edi + eax]
add ebx, 0xb31da469
and ebp, edi
add ebp, ebp
sub ebx, ebp
add bl, dl
add bl, 0x21
mov byte [esp + eax + 0x1b8], bl
add esi, ecx
movzx edx, dl
not edx
add eax, edx
jmp 0x4021c7
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x4021c4
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x4021c2
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x40222d
lea ebx, [eax - 0x2462dbb7]
lea edx, [eax + edi]
add edx, 0xdb9d2449
and ebx, edi
add ebx, ebx
sub edx, ebx
inc dl
jmp 0x40217c
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x401fe6
mov ebx, ecx
dec eax
mov ecx, ebx
inc eax
cmp eax, 0x2b
jb 0x401fcd
jmp 0x402287
lea ebp, [ecx + 7]
cmp esi, ebp
je 0x4020df
lea ebp, [ecx + 6]
cmp esi, ebp
jne 0x401ff5
jmp 0x40210b
lea ebp, [ecx + 0x10]
cmp esi, ebp
jne 0x402215
lea ebx, [eax - 0x57de1f88]
lea edx, [eax + edi]
add edx, 0xa821e078
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xb8
jmp 0x40217c
cmp esi, ebx
je 0x4020b3
lea edi, [ecx + 4]
cmp esi, edi
je 0x40210b
jmp 0x401fbd
lea ebp, [ecx + 7]
cmp esi, ebp
je 0x4020b3
cmp esi, 3
ja 0x402261
lea ebx, [eax + 0x76bc0401]
lea edx, [eax + edi]
add edx, 0x76bc0401
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xf9
mov byte [esp + eax + 0x1b8], dl
jmp 0x4021c7
lea ebp, [eax + 0x3c61a068]
lea ebx, [eax + edi]
add ebx, 0x3c61a068
and ebp, edi
add ebp, ebp
sub ebx, ebp
add dl, bl
add dl, 0x28
jmp 0x402159
mov eax, 0x14eb4ad
jmp 0x402290
xor eax, eax
jmp 0x402290
mov eax, 0x152b0ac
lea esi, [esp + eax]
add esi, 0x1b8
xor edi, edi
mov dword [0x4781b0], edi
mov dword [0x4781c0], edi
mov dword [0x4781c4], 0xf
mov byte [0x4781b0], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4781b0
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473030]
movups xmmword [esp + 0x560], xmm0
movaps xmm0, xmmword [str.l_Tz]
movups xmmword [esp + 0x570], xmm0
mov dword [esp + 0x584], edi
mov dword [esp + 0x580], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x402596
mov bl, byte [esp + eax + 0x560]
movzx edi, bl
lea edx, [ecx + 1]
cmp esi, edx
jae 0x402385
cmp ecx, eax
ja 0x4025a1
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x402399
lea ebx, [ecx + 8]
cmp esi, ebx
je 0x40250a
lea edx, [ecx + 9]
cmp esi, edx
jne 0x402490
lea esi, [eax - 0x7dbe9b98]
lea edx, [eax + edi]
add edx, 0x82416468
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x28
lea esi, [eax - 0x249441ce]
lea ebx, [eax + edi]
add ebx, 0xdb6bbe32
and esi, edi
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0xa2
mov byte [esp + eax + 0x560], bl
jmp 0x4024b5
je 0x402487
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x4023ef
mov edx, ecx
jmp 0x402459
mov dword [esp], ebp
lea ebp, [ecx + 9]
cmp esi, ebp
jae 0x402420
lea ebx, [eax + 0x54fc2662]
lea ebp, [eax + edi]
add ebp, 0x54fc2662
and ebx, edi
add ebx, ebx
sub ebp, ebx
mov ebx, ebp
add bl, 0x52
cmp dword [esp], 5
je 0x40242f
cmp esi, edx
jne 0x4024c0
lea ebx, [eax + 0x3173716e]
lea ecx, [eax + edi]
add ecx, 0x3173716e
and ebx, edi
add ebx, ebx
sub ecx, ebx
add cl, 0xfe
mov byte [esp + eax + 0x560], cl
jmp 0x40250a
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x40242f
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x4024f4
lea ebx, [eax - 0x592a59ca]
lea edx, [eax + edi]
add edx, 0xa6d5a636
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x86
add esi, ecx
jmp 0x4024b3
cmp esi, edx
je 0x402487
lea ebx, [ecx + 3]
cmp esi, ebx
jne 0x402501
lea ebp, [eax - 0x7a9bf50a]
lea ebx, [edi + eax]
add ebx, 0x85640af6
and ebp, edi
add ebp, ebp
sub ebx, ebp
add bl, 0x46
mov byte [esp + eax + 0x560], bl
movzx ebx, bl
not ecx
add ecx, eax
sub ecx, ebx
mov eax, ecx
lea ebx, [eax - 0x259fcea8]
lea ecx, [eax + edi]
add ecx, 0xda603158
and ebx, edi
add ebx, ebx
sub ecx, ebx
add cl, 0x98
mov byte [esp + eax + 0x560], cl
sub eax, esi
inc esi
mov bl, byte [esp + eax + 0x55e]
add eax, 0xfffffffe
mov ecx, edx
movzx edx, bl
add edx, ecx
add eax, edx
jmp 0x40250d
lea edx, [ecx + 5]
cmp esi, edx
jne 0x40251c
lea ebx, [eax - 0x29ce0210]
lea edx, [eax + edi]
add edx, 0xd631fdf0
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x70
mov ebp, esi
movzx edx, dl
not edx
add eax, edx
mov esi, ebp
jmp 0x40250d
mov ebp, ebx
lea ebx, [ecx + 2]
cmp esi, ebx
je 0x40250a
lea ebx, [ecx + 3]
cmp esi, ebx
je 0x402508
lea ebx, [ecx + 5]
cmp esi, ebx
jne 0x402555
lea esi, [eax - 0x6e115ad2]
lea edx, [eax + edi]
add edx, 0x91eea52e
and esi, edi
add esi, esi
sub edx, esi
add dl, 0xbe
mov ebp, dword [esp]
jmp 0x4024b5
lea ebp, [ecx + 6]
cmp esi, ebp
jne 0x402322
jmp 0x402508
lea ebx, [ecx + 2]
cmp esi, ebx
jne 0x40252e
mov edx, ecx
dec eax
mov ecx, edx
inc eax
cmp eax, 0x28
jb 0x402309
jmp 0x40259d
lea ebx, [ecx + 2]
mov edx, ecx
cmp esi, ebx
je 0x402459
jmp 0x4022f9
cmp esi, ebp
je 0x4023cb
lea ebx, [eax - 0x750d9f6]
lea ebp, [eax + edi]
add ebp, 0xf8af260a
and ebx, edi
add ebx, ebx
sub ebp, ebx
mov ebx, ebp
add bl, 0xba
jmp 0x4023bd
lea ebx, [ecx + 6]
cmp esi, ebx
je 0x40242f
lea ebx, [ecx + 8]
cmp esi, ebx
jbe 0x402581
lea edx, [eax + 0x38c44b64]
lea ebx, [eax + edi]
add ebx, 0x38c44b64
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0x44
jmp 0x40258a
lea edi, [ecx + 4]
cmp esi, edi
mov ebx, ebp
je 0x40250a
mov byte [esp + eax + 0x560], bl
jmp 0x40250d
mov eax, 0xa5f03a
jmp 0x4025a6
xor eax, eax
jmp 0x4025a6
mov eax, 0x169c9d8
lea esi, [esp + eax]
add esi, 0x560
xor eax, eax
mov dword [0x4781c8], eax
mov dword [0x4781d8], eax
mov dword [0x4781dc], 0xf
mov byte [0x4781c8], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4781c8
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473050]
movups xmmword [esp + 0x450], xmm0
mov dword [esp + 0x460], 0x564e44bd
mov dword [esp + 0x464], 0x7b440b7
mov dword [esp + 0x468], 0x3ace381c
mov word [esp + 0x46c], 0x5d30
xorps xmm0, xmm0
movups xmmword [esp + 0x46e], xmm0
mov word [esp + 0x47e], 0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edi, dword [eax]
xor ebp, ebp
mov eax, 0x15c4108
cmp esi, ebp
ja 0x4030ea
mov dword [esp + 0xc], ebx
movzx ecx, byte [esp + ebp + 0x450]
lea eax, [ebp + 0x7837e28]
lea edx, [ecx + ebp]
add edx, 0x7837e28
and eax, ecx
add eax, eax
sub edx, eax
add dl, 0xe8
lea eax, [ebp - 0x6236a6b8]
lea ebx, [ecx + ebp]
add ebx, 0x9dc95948
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 8
mov dword [esp], ebx
lea eax, [ebp + 0x55e8368]
lea ebx, [ecx + ebp]
add ebx, 0x55e8368
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0x28
mov dword [esp + 0x14], ebx
lea eax, [ebp - 0x9a878e8]
and eax, ecx
add eax, eax
mov dword [esp + 4], ecx
add ecx, ebp
add ecx, 0xf6578718
sub ecx, eax
add cl, 0x58
mov dword [esp + 0x10], ecx
mov dword [esp + 8], edx
mov ebx, edi
inc edi
mov eax, edx
cmp esi, edi
jb 0x402703
je 0x402bd5
mov edi, ebx
lea eax, [ebx + 2]
cmp esi, eax
je 0x402c1f
lea eax, [edi + 4]
cmp esi, eax
je 0x402cdf
mov ebx, edi
add edi, 6
mov eax, dword [esp + 0xc]
cmp esi, edi
je 0x402d6c
cmp ebx, ebp
ja 0x4030e1
mov ecx, ebp
mov ebp, ebx
lea edi, [ebx + 6]
mov edx, dword [esp]
mov ah, dl
cmp esi, edi
jb 0x402754
lea edi, [ebp + 1]
cmp esi, edi
je 0x402cba
lea edi, [ebp + 2]
cmp esi, edi
je 0x402d1f
lea edi, [ebp + 3]
cmp esi, edi
je 0x402daf
lea edi, [ebp + 5]
cmp esi, edi
je 0x402e25
lea edi, [ebp + 9]
mov ah, al
cmp esi, edi
je 0x402e98
mov ebx, ebp
lea edi, [esi + ebp]
mov ebp, ecx
cmp edi, ecx
jbe 0x402afb
mov edi, ebx
lea eax, [ebx + 4]
cmp esi, eax
je 0x4028fe
lea eax, [edi + 2]
cmp esi, eax
je 0x40291f
lea eax, [edi + 0x2a]
cmp esi, eax
je 0x402940
lea eax, [edi + 0x41]
cmp esi, eax
je 0x402961
lea eax, [edi + 0x61]
cmp esi, eax
je 0x402982
lea eax, [edi + 0x400]
cmp esi, eax
je 0x4029a3
lea eax, [edi + 0x200]
cmp esi, eax
je 0x4029c4
lea eax, [edi + 0x64]
cmp esi, eax
je 0x4029e5
lea eax, [edi + 0x40]
cmp esi, eax
je 0x402a06
lea esi, [edi + 0x10]
lea eax, [edi + 0x23]
cmp esi, eax
jb 0x4030c0
lea eax, [edi + 0x20]
lea ebx, [edi + 0x1a]
cmp esi, eax
jb 0x402a27
lea eax, [edi + 0x1e]
cmp esi, eax
jb 0x4028e3
lea eax, [edi + 0x1c]
cmp esi, eax
jb 0x4028da
lea eax, [edi + 0x44]
cmp esi, eax
jb 0x402a4e
lea eax, [edi + 0x5b]
cmp esi, eax
jb 0x402aa2
lea eax, [edi + 0x7b]
cmp esi, eax
jb 0x402acf
lea eax, [edi + 0x41a]
cmp esi, eax
jb 0x402763
lea esi, [edi + 0x402]
lea ebx, [edi + 0x602]
lea eax, [edi + 0x682]
cmp esi, eax
ja 0x402b70
lea eax, [edi + 0x644]
cmp esi, eax
ja 0x402b8e
lea eax, [edi + 0x62a]
cmp esi, eax
ja 0x402bb3
lea eax, [edi + 0x612]
cmp esi, eax
ja 0x402bfa
lea eax, [edi + 0x60b]
cmp esi, eax
ja 0x402c98
lea eax, [edi + 0x608]
cmp esi, eax
ja 0x402cfd
lea eax, [edi + 0x606]
cmp esi, eax
ja 0x402d8a
lea eax, [edi + 0x604]
cmp esi, eax
ja 0x402e03
lea eax, [edi + 0x62c]
cmp esi, eax
ja 0x402e4a
lea eax, [edi + 0x643]
cmp esi, eax
ja 0x402763
lea esi, [edi + 0x67c]
add edi, 0x6a6
mov ebx, edi
jmp 0x402763
mov eax, dword [esp + 0x14]
jmp 0x402703
mov eax, dword [esp + 0x10]
mov dword [esp + 0xc], eax
cmp esi, ebp
mov edi, ebx
mov edx, dword [esp + 8]
jbe 0x4026cb
jmp 0x40cbfd
lea eax, [ebp + 0x3a803530]
mov edx, dword [esp + 4]
lea ebx, [edx + ebp]
add ebx, 0x3a803530
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xb0
jmp 0x402e6a
lea eax, [ebp + 0x49873180]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x49873180
and eax, ecx
add eax, eax
sub ebx, eax
xor bl, 0x80
jmp 0x402e87
lea eax, [ebp + 0x588e2dd0]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x588e2dd0
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0x50
jmp 0x402e88
lea eax, [ebp + 0x67952a20]
mov edx, dword [esp + 4]
lea ebx, [edx + ebp]
add ebx, 0x67952a20
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x20
jmp 0x402d3f
lea eax, [ebp + 0x769c2670]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x769c2670
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0xf0
jmp 0x402d5e
lea eax, [ebp - 0x7a5cdd40]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x85a322c0
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0xc0
jmp 0x402d60
lea eax, [ebp - 0x6b55e0f0]
mov edx, dword [esp + 4]
lea ebx, [edx + ebp]
add ebx, 0x94aa1f10
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x90
jmp 0x402c3b
lea eax, [ebp - 0x5c4ee4a0]
mov edx, dword [esp + 4]
lea ebx, [edx + ebp]
add ebx, 0xa3b11b60
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x60
jmp 0x402c64
lea eax, [ebp - 0x4d47e850]
mov edx, dword [esp + 4]
lea ebx, [edx + ebp]
add ebx, 0xb2b817b0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x30
jmp 0x402c8f
mov eax, dword [esp + 4]
lea ecx, [eax + ebp]
add ecx, 0xe7508ac8
add ebp, 0xe7508ac8
and ebp, eax
add ebp, ebp
sub ecx, ebp
add cl, 0x88
xor ebp, ebp
mov edi, ebx
mov ebx, ecx
jmp 0x402640
lea eax, [ebp + 0x32737858]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0x32737858
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0x98
mov dword [esp + 8], ecx
mov edi, ebx
cmp esi, 3
ja 0x402b51
lea eax, [edi + 3]
cmp esi, eax
jbe 0x402ebd
lea eax, [ebp + 0x681e68d0]
lea ecx, [edx + ebp]
add ecx, 0x681e68d0
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0x50
mov dword [esp + 8], ecx
jmp 0x402ac4
lea eax, [ebp + 0x417a74a8]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0x417a74a8
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0x68
mov dword [esp + 8], ecx
mov edi, ebx
cmp edi, 8
ja 0x402b32
mov edx, dword [esp + 8]
jmp 0x402aed
lea eax, [ebp + 0x508170f8]
mov ecx, dword [esp + 4]
lea edx, [ecx + ebp]
add edx, 0x508170f8
and eax, ecx
add eax, eax
sub edx, eax
add dl, 0x38
mov edi, ebx
mov byte [esp + ebp + 0x450], dl
mov ebx, edx
jmp 0x402e89
lea ecx, [ebx + 0x64]
cmp esi, ecx
jae 0x402dd1
cmp edi, 0x61
jne 0x402ee1
lea eax, [ebp + 0x1c723c90]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0x1c723c90
and eax, edx
add eax, eax
sub ecx, eax
sub cl, dl
add cl, 0x10
jmp 0x402bcf
lea eax, [ebp - 0x19bbc10]
lea ebx, [edx + ebp]
add ebx, 0xfe6443f0
and eax, edx
add eax, eax
sub ebx, eax
add bl, bl
add bl, 0xe0
jmp 0x402e6a
lea eax, [ebp + 0xd6b4040]
lea ebx, [edx + ebp]
add ebx, 0xd6b4040
and eax, edx
add eax, eax
sub ebx, eax
add bl, dl
add bl, 0x40
jmp 0x402d3f
lea eax, [ebp + 0x7612e7c0]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0x7612e7c0
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0xc0
jmp 0x402bf1
lea eax, [ebp - 0x7ae61bf0]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0x8519e410
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0x90
mov edi, ebx
mov ebx, ecx
jmp 0x402c64
lea eax, [ebp - 0x6bdf1fa0]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0x9420e060
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0x60
mov edi, ebx
mov ebx, ecx
jmp 0x402c3b
lea eax, [ebp + 0x168a7a78]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0x168a7a78
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0xb8
mov edi, ebx
mov ebx, ecx
jmp 0x402c8f
lea eax, [ebp - 0x5cd82350]
mov ecx, dword [esp + 4]
lea edx, [ecx + ebp]
add edx, 0xa327dcb0
and eax, ecx
add eax, eax
sub edx, eax
add dl, 0x30
mov edi, ebx
mov ebx, edx
jmp 0x402d60
lea eax, [ebp + 0x34987318]
mov edx, dword [esp + 4]
lea ebx, [edx + ebp]
add ebx, 0x34987318
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x58
lea ecx, [ebp + 0x23f5bab8]
lea eax, [edx + ebp]
add eax, 0x23f5bab8
and ecx, edx
add ecx, ecx
sub eax, ecx
add al, 0xf8
mov byte [esp + ebp + 0x450], al
mov ecx, edi
inc edi
movzx eax, al
not ecx
sub ebp, eax
add ebp, ecx
lea ecx, [ebp + 0x2b7938e0]
lea eax, [edx + ebp]
add eax, 0x2b7938e0
and ecx, edx
add ecx, ecx
sub eax, ecx
add al, 0xe0
mov byte [esp + ebp + 0x450], al
sub ebp, esi
inc esi
movzx edx, byte [esp + ebp + 0x44e]
add ebp, 0xfffffffe
add edx, edi
add ebp, edx
jmp 0x402e89
lea eax, [ebp - 0x4dd12700]
mov ecx, dword [esp + 4]
lea edx, [ecx + ebp]
add edx, 0xb22ed900
and eax, ecx
add eax, eax
sub edx, eax
mov edi, ebx
mov ebx, edx
jmp 0x402d5e
lea eax, [ecx - 0x532faa68]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0xacd05598
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xd8
mov edi, ebp
mov ebp, ecx
jmp 0x402e6a
lea eax, [ebp + 0x52a66bb8]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x52a66bb8
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0xf8
jmp 0x402d5e
lea eax, [ebp - 0x3eca2ab0]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0xc135d550
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0xd0
mov edi, ebx
mov ebx, ecx
jmp 0x402d3f
lea eax, [ecx - 0x261ab578]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0xd9e54a88
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x48
mov edi, ebp
mov ebp, ecx
lea ecx, [ebp + 0x14eebe68]
lea eax, [edx + ebp]
add eax, 0x14eebe68
and ecx, edx
add ecx, ecx
sub eax, ecx
add al, bl
add al, 0x28
mov byte [esp + ebp + 0x450], al
add esi, edi
movzx eax, bl
not eax
add ebp, eax
jmp 0x402e89
lea eax, [ebp + 0x70b46458]
mov ecx, dword [esp + 4]
lea edx, [ecx + ebp]
add edx, 0x70b46458
and eax, ecx
add eax, eax
sub edx, eax
add dl, 0x98
jmp 0x402da6
lea eax, [ebp - 0x2fc32e60]
mov ecx, dword [esp + 4]
lea edx, [ecx + ebp]
add edx, 0xd03cd1a0
and eax, ecx
add eax, eax
sub edx, eax
add dl, 0xa0
mov edi, ebx
mov ebx, edx
jmp 0x402e88
lea eax, [ecx - 0x1713b928]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0xe8ec46d8
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x18
mov edi, ebp
mov ebp, ecx
jmp 0x402d5e
mov edx, ebx
lea ecx, [ebx + 1]
cmp esi, ecx
jne 0x402f12
lea eax, [ebp + 0x3b92b290]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x3b92b290
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0x10
mov edi, edx
mov edx, ecx
jmp 0x402c8f
lea eax, [ebp - 0x20bc3210]
mov ecx, dword [esp + 4]
lea edx, [ecx + ebp]
add edx, 0xdf43cdf0
and eax, ecx
add eax, eax
sub edx, eax
add dl, 0x70
mov edi, ebx
mov ebx, edx
jmp 0x402e87
lea eax, [ecx - 0x80cbcd8]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0xf7f34328
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xe8
mov edi, ebp
mov ebp, ecx
jmp 0x402d60
lea eax, [ebp - 0x11b535c0]
mov edx, dword [esp + 4]
lea ecx, [edx + ebp]
add ecx, 0xee4aca40
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0x40
mov edi, ebx
mov ebx, ecx
lea ecx, [ebp + 0x5e7c218]
lea eax, [edx + ebp]
add eax, 0x5e7c218
and ecx, edx
add ecx, ecx
sub eax, ecx
add al, 0x58
mov byte [esp + ebp + 0x450], al
inc edi
dec ebp
inc ebp
cmp ebp, 0x30
jb 0x402640
jmp 0x4030e8
lea eax, [ecx + 0x25083818]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0x25083818
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x58
mov edi, ebp
mov ebp, ecx
jmp 0x402c8f
lea ecx, [edi + 1]
cmp esi, ecx
jne 0x402f3e
lea eax, [ebp + 0x77256520]
lea ebx, [edx + ebp]
add ebx, 0x77256520
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x20
jmp 0x402c8f
mov edi, ebx
lea eax, [ebx + 0x1000]
cmp esi, eax
mov edx, dword [esp + 4]
jbe 0x402f5f
lea eax, [ebp - 0x35aaf078]
lea ecx, [edx + ebp]
add ecx, 0xca550f88
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0x48
mov dword [esp + 8], ecx
jmp 0x402a70
lea ecx, [edx + 2]
cmp esi, ecx
jne 0x402f83
lea eax, [ebp + 0x59a0ab30]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x59a0ab30
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0xb0
mov edi, edx
mov edx, ecx
jmp 0x402c3b
cmp esi, eax
jne 0x402faf
lea eax, [ebp - 0x6acca240]
lea ebx, [edx + ebp]
add ebx, 0x95335dc0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xc0
jmp 0x402c3b
lea eax, [edi + 1]
cmp esi, eax
jne 0x402fd0
lea eax, [ebp - 0x26a3f428]
lea ebx, [edx + ebp]
add ebx, 0xd95c0bd8
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x18
jmp 0x402e6a
lea ecx, [edx + 5]
cmp esi, ecx
jne 0x402ff4
lea eax, [ebp - 0x794a5fe0]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x86b5a020
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0x20
mov edi, edx
mov edx, ecx
jmp 0x402d3f
lea eax, [edi + 4]
cmp esi, eax
jne 0x403028
lea eax, [ebp - 0x2eb0b100]
lea ebx, [edx + ebp]
add ebx, 0xd14f4f00
and eax, edx
add eax, eax
sub ebx, eax
jmp 0x402e88
lea eax, [edi + 2]
cmp esi, eax
jne 0x403050
lea eax, [ebp + 0x1577fd18]
lea ebx, [edx + ebp]
add ebx, 0x1577fd18
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x58
jmp 0x402d5e
lea ecx, [edx + 3]
mov al, ah
mov dword [esp + 8], eax
cmp esi, ecx
jne 0x402b06
lea eax, [ebp - 0x6a436390]
mov ecx, dword [esp + 4]
lea ebx, [ecx + ebp]
add ebx, 0x95bc9c70
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0xf0
mov edi, edx
jmp 0x402e88
lea eax, [edi + 8]
cmp esi, eax
jne 0x402ac4
lea eax, [ebp - 0x10a2b860]
lea ebx, [edx + ebp]
add ebx, 0xef5d47a0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xa0
jmp 0x402e6a
lea eax, [edi + 5]
cmp esi, eax
jne 0x403074
lea eax, [ebp + 0x247ef968]
lea ebx, [edx + ebp]
add ebx, 0x247ef968
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x28
jmp 0x402d60
lea eax, [edi + 3]
cmp esi, eax
jne 0x403098
lea eax, [ebp + 0x3385f5b8]
lea ebx, [edx + ebp]
add ebx, 0x3385f5b8
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xf8
jmp 0x402c3b
lea eax, [edi + 7]
cmp esi, eax
jne 0x402a70
lea eax, [ebp + 0x5193ee58]
lea ebx, [edx + ebp]
add ebx, 0x5193ee58
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x98
jmp 0x402c8f
mov eax, dword [esp + 4]
lea ebx, [eax + ebp]
add ebx, 0xd8498e78
add ebp, 0xd8498e78
and ebp, eax
add ebp, ebp
sub ebx, ebp
add bl, 0xb8
jmp 0x402630
mov eax, 0x158c2e0
jmp 0x4030ea
xor eax, eax
lea esi, [esp + eax]
add esi, 0x450
xor edi, edi
mov dword [0x4781e0], edi
mov dword [0x4781f0], edi
mov dword [0x4781f4], 0xf
mov byte [0x4781e0], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4781e0
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473060]
movups xmmword [esp + 0x4dc], xmm0
movaps xmm0, xmmword [0x473070]
movups xmmword [esp + 0x4ec], xmm0
mov word [esp + 0x4fc], 0x11bc
mov dword [esp + 0x502], edi
mov dword [esp + 0x4fe], edi
mov dword [esp + 0x509], edi
mov dword [esp + 0x505], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x403492
mov dl, byte [esp + eax + 0x4dc]
movzx edi, dl
lea ebx, [ecx + 1]
cmp esi, ebx
jae 0x403206
cmp ecx, eax
ja 0x40349d
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x403280
lea edx, [ecx + 9]
cmp esi, edx
je 0x4032ba
lea edx, [ecx + 0x2a]
cmp esi, edx
je 0x4032d9
lea edx, [ecx + 0xa]
cmp esi, edx
jne 0x403399
lea esi, [eax + 0x1f3a5be0]
lea edx, [eax + edi]
add edx, 0x1f3a5be0
and esi, edi
add esi, esi
sub edx, esi
add dl, 0xe0
lea esi, [eax - 0x2186c2e8]
lea ebx, [eax + edi]
add ebx, 0xde793d18
and esi, edi
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0x58
mov byte [esp + eax + 0x4dc], bl
jmp 0x4033b9
jne 0x40320c
mov ebx, ecx
jmp 0x403277
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x4032eb
lea ebp, [eax - 0x444c6038]
lea edx, [edi + eax]
add edx, 0xbbb39fc8
and ebp, edi
add ebp, ebp
sub edx, ebp
add dl, 0x88
mov byte [esp + eax + 0x4dc], dl
movzx edx, dl
not ecx
add ecx, eax
mov ebp, ecx
sub ebp, edx
mov dword [esp], esi
mov esi, edi
lea edi, [ebp - 0x55af2ee0]
lea eax, [esi + ebp]
add eax, 0xaa50d120
and edi, esi
mov esi, dword [esp]
add edi, edi
sub eax, edi
add al, 0x20
mov byte [esp + ebp + 0x4dc], al
add edx, esi
inc esi
sub ecx, edx
mov dl, byte [esp + ecx + 0x4da]
add ecx, 0xfffffffe
mov eax, ecx
movzx ecx, dl
add ecx, ebx
add eax, ecx
jmp 0x4032da
mov dword [esp], ebp
lea ebp, [ecx + 4]
cmp esi, ebp
jae 0x403313
mov dword [esp + 4], edx
lea ebp, [eax - 0x1162cea8]
lea edx, [eax + edi]
add edx, 0xee9d3158
and ebp, edi
add ebp, ebp
sub edx, ebp
add dl, 0x98
mov dword [esp + 0xc], edx
cmp esi, ebx
mov edx, dword [esp + 4]
jne 0x40334b
lea edx, [eax + 0x13eda68]
lea ecx, [edi + eax]
add ecx, 0x13eda68
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x28
mov byte [esp + eax + 0x4dc], cl
dec eax
mov ecx, ebx
inc eax
cmp eax, 0x31
jb 0x40317b
jmp 0x403499
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x403356
lea ebx, [eax + 0x40c11ec8]
lea edx, [eax + edi]
add edx, 0x40c11ec8
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x88
add esi, ecx
mov ebp, esi
jmp 0x4033b9
cmp esi, ebx
je 0x403208
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x403217
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x4033eb
lea esi, [eax - 0x654c5cd0]
lea edx, [eax + edi]
add edx, 0x9ab3a330
and esi, edi
add esi, esi
sub edx, esi
add dl, 0xb0
jmp 0x403394
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x403371
mov ebx, ecx
jmp 0x4032d9
lea ebp, [ecx + 5]
cmp esi, ebp
je 0x4032d9
lea ebp, [ecx + 8]
cmp esi, ebp
jne 0x403194
jmp 0x4032ba
mov dword [esp + 8], ebp
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x4033c7
lea esi, [eax + 0x2d98af68]
lea edx, [eax + edi]
add edx, 0x2d98af68
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x28
mov ebp, dword [esp]
jmp 0x4033b9
cmp esi, ebx
jne 0x403422
lea esi, [eax - 0x38b4170]
lea edx, [eax + edi]
add edx, 0xfc74be90
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x10
movzx edx, dl
not edx
add eax, edx
mov esi, ebp
jmp 0x4032dc
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x403432
lea ebx, [eax + 0xad31218]
lea edx, [eax + edi]
add edx, 0xad31218
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x58
jmp 0x40330c
lea ebp, [ecx + 5]
cmp esi, ebp
je 0x4032d9
lea ebp, [ecx + 9]
cmp esi, ebp
je 0x4032ba
mov dword [esp + 4], edx
lea ebp, [eax - 0x6d1af3c8]
lea edx, [eax + edi]
add edx, 0x92e50c38
and ebp, edi
add ebp, ebp
sub edx, ebp
add dl, 0x78
jmp 0x4032aa
lea edx, [ecx + 6]
cmp esi, edx
je 0x403217
jmp 0x40316b
lea ebp, [ecx + 7]
cmp esi, ebp
je 0x403217
cmp esi, 7
ja 0x403470
cmp esi, dword [esp + 8]
mov ebx, dword [esp + 0xc]
jbe 0x403464
lea edx, [eax + 0x6e59ce30]
lea ebx, [eax + edi]
add ebx, 0x6e59ce30
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0xb0
mov byte [esp + eax + 0x4dc], bl
jmp 0x4032dc
lea esi, [eax - 0x1023f440]
lea ebx, [eax + edi]
add ebx, 0xefdc0bc0
and esi, edi
add esi, esi
sub ebx, esi
add dl, bl
add dl, 0xc0
mov ebp, dword [esp]
jmp 0x4031e0
mov eax, 0xba5878
jmp 0x4034a2
xor eax, eax
jmp 0x4034a2
mov eax, 0x15d2720
lea esi, [esp + eax]
add esi, 0x4dc
xor edi, edi
mov dword [0x4781f8], edi
mov dword [0x478208], edi
mov dword [0x47820c], 0xf
mov byte [0x4781f8], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4781f8
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473080]
movups xmmword [esp + 0x2dc], xmm0
mov word [esp + 0x2ec], 0xe5d5
mov byte [esp + 0x2ee], 0x48
xorps xmm0, xmm0
movups xmmword [esp + 0x2ef], xmm0
mov dword [esp + 0x303], edi
mov dword [esp + 0x2ff], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x40387e
mov dl, byte [esp + eax + 0x2dc]
movzx ebx, dl
lea edi, [ecx + 1]
cmp esi, edi
jae 0x40357f
cmp ecx, eax
ja 0x403889
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x4035af
mov dword [esp], ebx
lea ebx, [ecx + 0xa]
cmp esi, ebx
jne 0x40364e
lea esi, [eax + 0x5f2ae0cc]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x5f2ae0cc
and esi, ebx
add esi, esi
sub edx, esi
add dl, 0x6c
jmp 0x403772
je 0x403610
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x40361a
mov edi, ebx
lea ebx, [eax - 0x6d94f2f9]
lea edx, [eax + edi]
add edx, 0x926b0d07
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xcf
jmp 0x403796
cmp ebp, 0x20
jne 0x403679
lea ebp, [eax - 0x33402c3b]
lea edx, [eax + ebx]
add edx, 0xccbfd3c5
and ebp, ebx
add ebp, ebp
sub edx, ebp
add dl, 0x9d
mov byte [esp + eax + 0x2dc], dl
movzx edx, dl
not ecx
add ecx, eax
sub ecx, edx
mov eax, ecx
lea edx, [eax - 0x22fb63ac]
lea ecx, [eax + ebx]
add ecx, 0xdd049c54
and edx, ebx
add edx, edx
sub ecx, edx
add cl, 0xb4
mov byte [esp + eax + 0x2dc], cl
sub eax, esi
inc esi
mov dl, byte [esp + eax + 0x2da]
add eax, 0xfffffffe
mov ecx, edi
movzx edx, dl
add edx, ecx
jmp 0x40379b
mov dword [esp], ebx
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x4036fa
lea ebx, [eax - 0x2c81d0bd]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0xd37e2f43
and ebx, edi
add ebx, ebx
sub edx, ebx
mov ebx, edi
add dl, 0x2b
add esi, ecx
mov ebp, esi
jmp 0x403772
lea ebx, [ecx + 3]
cmp esi, ebx
jne 0x403715
lea esi, [eax + 0x7fb471ea]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0x7fb471ea
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x9a
jmp 0x403794
mov dword [esp + 0xc], ebp
lea ebp, [ecx + 9]
cmp esi, ebp
jbe 0x40372a
lea ebp, [eax - 0x1f9c35ed]
mov dword [esp], ebx
mov ebx, dword [esp]
add ebx, eax
add ebx, 0xe063ca13
mov dword [esp + 4], ebx
and ebp, dword [esp]
add ebp, ebp
sub dword [esp + 4], ebp
mov ebx, dword [esp + 4]
add bl, 0x7b
mov dword [esp + 4], ebx
cmp esi, 5
mov ebp, dword [esp + 0xc]
ja 0x403753
lea ebx, [ecx + 3]
mov dword [esp + 8], ebx
cmp esi, ebx
mov ebx, dword [esp]
jbe 0x4037ca
lea edx, [eax + 0x36083dce]
mov edi, ebx
add ebx, eax
add ebx, 0x36083dce
and edx, edi
add edx, edx
sub ebx, edx
mov edx, ebx
add dl, 0x5e
mov byte [esp + eax + 0x2dc], dl
jmp 0x40379d
lea ebp, [ecx + 4]
cmp esi, ebp
je 0x4037c3
lea ebp, [ecx + 2]
cmp esi, ebp
mov ebx, dword [esp]
jne 0x403542
jmp 0x403732
lea ebx, [ecx + 0x10]
cmp esi, ebx
jne 0x4037ac
mov edi, ecx
mov ebx, dword [esp]
jmp 0x4035e2
cmp esi, edi
jne 0x4037bc
lea edx, [eax - 0x74534e77]
lea ecx, [ebx + eax]
add ecx, 0x8bacb189
and edx, ebx
add edx, edx
sub ecx, edx
add cl, 0x41
mov byte [esp + eax + 0x2dc], cl
jmp 0x4037c5
lea esi, [eax - 0x640e85e8]
mov edi, dword [esp]
lea ebx, [eax + edi]
add ebx, 0x9bf17a18
and esi, edi
add esi, esi
sub ebx, esi
add dl, bl
mov ebx, edi
add dl, 0x58
lea esi, [eax - 0x53c9bd59]
mov edi, ebx
add ebx, eax
add ebx, 0xac3642a7
and esi, edi
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0x6f
mov byte [esp + eax + 0x2dc], bl
mov esi, ebp
movzx edx, dl
not edx
add eax, edx
inc eax
cmp eax, 0x2b
jb 0x403529
jmp 0x403885
lea edi, [ecx + 4]
cmp esi, edi
je 0x403610
jmp 0x403519
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x403804
mov edi, ecx
dec eax
mov ecx, edi
jmp 0x40379d
cmp esi, edi
je 0x403610
lea edx, [ecx + 2]
cmp esi, edx
je 0x4035b8
cmp esi, dword [esp + 8]
jne 0x40386a
lea esi, [eax - 0x6be5b7e]
lea edx, [eax + ebx]
add edx, 0xf941a482
and esi, ebx
add esi, esi
sub edx, esi
add dl, 0x72
jmp 0x403772
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x40382c
lea esi, [eax - 0x7cec6057]
lea edx, [eax + ebx]
add edx, 0x83139fa9
and esi, ebx
add esi, esi
sub edx, esi
add dl, 0x61
mov esi, dword [esp + 0xc]
jmp 0x403796
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x40383a
mov edi, ecx
jmp 0x4035e2
lea ebp, [eax + 0x1044c88f]
mov dword [esp + 8], ebp
lea ebp, [eax + ebx]
add ebp, 0x1044c88f
mov dword [esp + 4], ebp
mov dword [esp], ebx
mov ebp, dword [esp + 8]
and ebp, ebx
add ebp, ebp
mov ebx, dword [esp + 4]
sub ebx, ebp
add bl, 0x17
jmp 0x4036b0
lea edx, [ecx + 4]
cmp esi, edx
mov edx, dword [esp + 4]
jne 0x4036ee
jmp 0x403732
mov eax, 0xfb88a3
jmp 0x40388e
xor eax, eax
jmp 0x40388e
mov eax, 0x176c014
lea esi, [esp + eax]
add esi, 0x2dc
xor edi, edi
mov dword [0x478210], edi
mov dword [0x478220], edi
mov dword [0x478224], 0xf
mov byte [0x478210], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478210
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473090]
movups xmmword [esp + 0x118], xmm0
mov dword [esp + 0x128], 0x27cbf588
mov word [esp + 0x12c], 0xc1c5
mov byte [esp + 0x12e], 0xa6
mov dword [esp + 0x133], edi
mov dword [esp + 0x12f], edi
mov dword [esp + 0x13a], edi
mov dword [esp + 0x136], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x403cae
mov dl, byte [esp + eax + 0x118]
movzx edi, dl
mov dword [esp], edi
lea ebx, [ecx + 1]
cmp esi, ebx
jae 0x40398c
cmp ecx, eax
ja 0x403cb9
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x4039c7
mov dword [esp + 4], ebp
lea ebp, [ecx + 8]
cmp esi, ebp
je 0x403ab6
lea ebp, [ecx + 9]
cmp esi, ebp
jne 0x403b0f
lea esi, [eax + 0x1bc8a38]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0x1bc8a38
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x78
mov esi, dword [esp + 4]
jmp 0x403bd1
jne 0x403995
mov ebx, ecx
jmp 0x403a73
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x403a0e
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x403ae0
lea ebx, [eax - 0x6e82f9cc]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0x917d0634
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x94
jmp 0x403bd1
lea edi, [ecx + 2]
mov dword [esp + 0xc], edi
cmp esi, edi
jae 0x403a7c
mov dword [esp + 8], edx
mov dword [esp + 4], ebp
lea ebp, [eax - 0x619cc66c]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0x9e633994
and ebp, edi
add ebp, ebp
sub edx, ebp
add dl, 0xf4
mov dword [esp + 0x10], edx
mov ebp, dword [esp + 4]
cmp ebp, 9
mov edx, dword [esp + 8]
jne 0x403aae
lea ebp, [eax + 0x337910dc]
mov edi, dword [esp]
lea edx, [edi + eax]
add edx, 0x337910dc
and ebp, edi
add ebp, ebp
sub edx, ebp
add dl, 0xfc
mov byte [esp + eax + 0x118], dl
movzx edx, dl
not ecx
add ecx, eax
mov ebp, ecx
sub ebp, edx
mov dword [esp + 4], esi
mov esi, edi
lea edi, [ebp - 0x2e23b590]
lea eax, [esi + ebp]
add eax, 0xd1dc4a70
and edi, esi
mov esi, dword [esp + 4]
add edi, edi
sub eax, edi
add al, 0xf0
mov byte [esp + ebp + 0x118], al
add edx, esi
inc esi
sub ecx, edx
mov dl, byte [esp + ecx + 0x116]
add ecx, 0xfffffffe
mov eax, ecx
movzx ecx, dl
add ecx, ebx
add eax, ecx
jmp 0x403ad9
cmp esi, ebx
je 0x40398e
cmp esi, dword [esp + 0xc]
jne 0x403b81
lea ebx, [eax - 0x4d653440]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0xb29acbc0
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xc0
jmp 0x403bd1
cmp esi, ebx
jne 0x403b3b
lea edx, [eax - 0x4613d574]
mov edi, dword [esp]
lea ecx, [edi + eax]
add ecx, 0xb9ec2a8c
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x2c
mov byte [esp + eax + 0x118], cl
dec eax
mov ecx, ebx
jmp 0x403bd8
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x403b73
lea ebx, [eax + 0xb09ec84]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0xb09ec84
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x64
add esi, ecx
mov ebp, esi
jmp 0x403bab
cmp esi, ebx
jne 0x403be7
mov ebx, esi
mov esi, dword [esp]
lea edi, [eax + 0x3e82fd60]
lea edx, [eax + esi]
add edx, 0x3e82fd60
and edi, esi
mov esi, ebx
add edi, edi
sub edx, edi
add dl, 0x60
jmp 0x403bd1
cmp esi, dword [esp + 0xc]
je 0x403ad8
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x403b7a
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x403c2d
lea esi, [eax - 0x127b07f4]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0xed84f80c
and esi, edi
add esi, esi
sub edx, esi
add dl, 0xac
jmp 0x403983
lea ebp, [ecx + 7]
cmp esi, ebp
jne 0x403bf9
mov ebx, ecx
jmp 0x403ad8
mov dword [esp + 4], ebp
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x403c09
lea esi, [eax + 0x2c27b210]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0x2c27b210
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x90
mov ebp, dword [esp + 4]
lea esi, [eax - 0x94d624c]
mov edi, dword [esp]
lea ebx, [edi + eax]
add ebx, 0xf6b29db4
and esi, edi
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0x14
mov byte [esp + eax + 0x118], bl
mov esi, ebp
movzx edx, dl
not edx
add eax, edx
inc eax
cmp eax, 0x26
jb 0x403923
jmp 0x403cb5
lea edi, [ecx + 0xa]
mov ebx, ecx
cmp esi, edi
je 0x403a73
jmp 0x403913
lea ebp, [ecx + 8]
cmp esi, ebp
jne 0x40393f
jmp 0x403ab6
mov dword [esp + 8], edx
lea ebp, [eax - 0x1dc46dc]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0xfe23b924
and ebp, edi
add ebp, ebp
sub edx, ebp
add dl, 4
jmp 0x4039f9
lea ebp, [ecx + 7]
cmp esi, ebp
je 0x403a0e
lea ebp, [ecx + 4]
cmp esi, ebp
je 0x40398e
cmp esi, 7
ja 0x403c73
lea edx, [ecx + 6]
cmp esi, edx
mov ebp, dword [esp + 4]
jne 0x403c95
lea esi, [eax + 0x286f2458]
mov edi, dword [esp]
lea edx, [eax + edi]
add edx, 0x286f2458
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x98
jmp 0x403bab
lea esi, [eax + 0x584f6420]
mov edi, dword [esp]
lea ebx, [eax + edi]
add ebx, 0x584f6420
and esi, edi
add esi, esi
sub ebx, esi
add dl, bl
add dl, 0x20
jmp 0x403ba7
cmp ecx, 5
ja 0x403ab6
mov edx, dword [esp + 0x10]
mov byte [esp + eax + 0x118], dl
jmp 0x403bd8
mov eax, 0x8de904
jmp 0x403cbe
xor eax, eax
jmp 0x403cbe
mov eax, 0x16aaf70
lea esi, [esp + eax]
add esi, 0x118
xor edi, edi
mov dword [0x478228], edi
mov dword [0x478238], edi
mov dword [0x47823c], 0xf
mov byte [0x478228], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478228
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4730a0]
movups xmmword [esp + 0xf0], xmm0
mov dword [esp + 0x100], 0x3f2bcde6
mov word [esp + 0x104], 0xd129
mov byte [esp + 0x106], 0x8c
mov dword [esp + 0x10b], edi
mov dword [esp + 0x107], edi
mov dword [esp + 0x112], edi
mov dword [esp + 0x10e], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edi, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x404253
movzx edx, byte [esp + eax + 0xf0]
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x403de0
lea ecx, [eax - 0x6d944c69]
lea ebx, [eax + edx]
add ebx, 0x926bb397
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xdf
cmp edi, eax
ja 0x40425e
lea ecx, [edi + 5]
cmp esi, ecx
jae 0x403dff
mov dword [esp], ecx
lea ecx, [eax + 0x2d5bb63]
lea ebx, [eax + edx]
add ebx, 0x2d5bb63
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x4b
lea ecx, [esi + edi]
mov dword [esp + 4], ecx
cmp ecx, eax
jbe 0x403e72
cmp esi, ebp
jne 0x403f1a
lea ecx, [eax + 0x33f5f93e]
lea ebx, [eax + edx]
add ebx, 0x33f5f93e
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x4e
jmp 0x403ee8
jne 0x403e47
lea ecx, [eax - 0x48bce53b]
lea ebx, [eax + edx]
add ebx, 0xb7431ac5
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x9d
jmp 0x4040b2
cmp esi, ebp
jne 0x403ec2
lea ecx, [eax + 0x27ad2291]
lea ebx, [eax + edx]
add ebx, 0x27ad2291
and ecx, edx
mov byte [esp], 9
add ecx, ecx
sub ebx, ecx
add bl, byte [esp]
lea edi, [eax - 0x16aabe3f]
lea ecx, [edx + eax]
add ecx, 0xe95541c1
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0xb9
mov byte [esp + eax + 0xf0], cl
jmp 0x403eea
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x403ef2
mov dword [esp], esi
lea ecx, [eax + 0xf1e921]
lea ebx, [eax + edx]
add ebx, 0xf1e921
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x19
jmp 0x404056
lea ecx, [edi + 0xa]
cmp esi, ecx
jae 0x403f66
lea ecx, [eax - 0x6d944c69]
lea ebx, [eax + edx]
add ebx, 0x926bb397
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xdf
cmp dword [esp + 4], 0x2a
jne 0x403fdb
mov dword [esp], esi
lea ecx, [eax - 0x5f67a37a]
lea ebx, [eax + edx]
add ebx, 0xa0985c86
and ecx, edx
add ecx, ecx
sub ebx, ecx
sub bl, dl
add bl, 0x56
jmp 0x404056
mov dword [esp], ecx
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x403f8b
lea ecx, [eax + 0x715bf0ed]
lea ebx, [eax + edx]
add ebx, 0x715bf0ed
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x85
mov ebp, edi
dec eax
mov edi, ebp
jmp 0x4040b6
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x403fb6
lea ecx, [eax + 0x25c9504f]
lea ebx, [eax + edx]
add ebx, 0x25c9504f
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd7
jmp 0x404024
lea ecx, [edi + 6]
cmp esi, ecx
jne 0x403ffd
lea esi, [eax + 0x58cd606c]
lea ebx, [eax + edx]
add ebx, 0x58cd606c
and esi, edx
mov cl, 0xc
add esi, esi
sub ebx, esi
add bl, cl
lea ecx, [eax + 0xe2ca8ef]
lea esi, [edx + eax]
add esi, 0xe2ca8ef
and ecx, edx
add ecx, ecx
mov edx, esi
sub edx, ecx
add dl, bl
add dl, 0x77
mov byte [esp + eax + 0xf0], dl
jmp 0x404020
cmp esi, ebp
jne 0x404030
lea ecx, [eax + 0x5ab76c6]
lea ebx, [eax + edx]
add ebx, 0x5ab76c6
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x96
jmp 0x4040b2
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x4040c5
mov dword [esp], esi
lea ecx, [eax + 0x4b98da5]
lea ebx, [eax + edx]
add ebx, 0x4b98da5
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x7d
jmp 0x404056
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x403d82
lea ecx, [eax - 0x2201abcb]
lea ebx, [eax + edx]
add ebx, 0xddfe5435
and ecx, edx
mov byte [esp], 0x8d
jmp 0x403e1c
cmp esi, ebp
jne 0x4040e8
lea ecx, [eax + 0x8813229]
lea ebx, [eax + edx]
add ebx, 0x8813229
and ecx, edx
mov byte [esp], 0xe1
jmp 0x403e1c
lea ecx, [edi + 0x20]
cmp esi, ecx
jne 0x40410c
lea ecx, [eax + 0x7da4c79a]
lea ebx, [eax + edx]
add ebx, 0x7da4c79a
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xca
mov esi, dword [esp + 4]
movzx ecx, bl
not ecx
add eax, ecx
jmp 0x4040b6
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x404131
mov dword [esp], esi
lea ecx, [eax + 0x4f5a4522]
lea ebx, [eax + edx]
add ebx, 0x4f5a4522
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x12
lea esi, [eax + 0x3304101d]
lea ecx, [edx + eax]
add ecx, 0x3304101d
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0x35
mov byte [esp + eax + 0xf0], cl
movzx ecx, cl
not edi
add edi, eax
sub edi, ecx
mov eax, edi
mov edi, ebp
lea esi, [eax - 0x3a903c4c]
lea ecx, [eax + edx]
add ecx, 0xc56fc3b4
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0x14
mov byte [esp + eax + 0xf0], cl
mov esi, dword [esp]
sub eax, esi
inc esi
movzx edx, byte [esp + eax + 0xee]
add eax, 0xfffffffe
add edx, edi
add eax, edx
inc eax
cmp eax, 0x26
jb 0x403d53
jmp 0x40425a
cmp esi, dword [esp]
jne 0x403dac
lea ecx, [eax + 0x4e685c01]
lea ebx, [eax + edx]
add ebx, 0x4e685c01
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf9
jmp 0x4040b2
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x404150
lea ecx, [eax + 0x52300085]
lea ebx, [eax + edx]
add ebx, 0x52300085
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x5d
jmp 0x403ee8
cmp esi, dword [esp]
jne 0x404174
mov dword [esp], esi
lea ecx, [eax - 0x13d502dc]
lea ebx, [eax + edx]
add ebx, 0xec2afd24
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 4
jmp 0x404082
lea ecx, [edi + 6]
cmp esi, ecx
jne 0x40419c
lea esi, [eax - 0x421f8554]
lea ebx, [eax + edx]
add ebx, 0xbde07aac
and esi, edx
mov cl, 0x4c
jmp 0x403f38
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x4041c0
lea ecx, [eax - 0x3f49c9f1]
lea ebx, [eax + edx]
add ebx, 0xc0b6360f
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x97
jmp 0x404024
lea ecx, [edi + 0x10]
cmp esi, ecx
jne 0x404237
lea ecx, [eax + 0x11026452]
lea ebx, [eax + edx]
add ebx, 0x11026452
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc2
jmp 0x4040b2
mov ecx, dword [esp]
cmp esi, ecx
jne 0x4041e7
lea ecx, [eax + 0x78f4908]
lea ebx, [eax + edx]
add ebx, 0x78f4908
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc8
jmp 0x403eea
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x40420c
mov dword [esp], esi
lea ecx, [eax - 0x1a7262c3]
lea ebx, [eax + edx]
add ebx, 0xe58d9d3d
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x55
jmp 0x404056
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x403e95
lea ecx, [eax + 0x2c66b036]
lea ebx, [eax + edx]
add ebx, 0x2c66b036
and ecx, edx
mov byte [esp], 0x86
jmp 0x403e1c
cmp esi, dword [esp]
jne 0x40422b
lea ecx, [eax + 0x321226fc]
lea ebx, [eax + edx]
add ebx, 0x321226fc
and ecx, edx
mov byte [esp], 0x1c
jmp 0x403e1c
mov byte [esp + eax + 0xf0], bl
jmp 0x4040b6
lea ebx, [eax + edx]
add ebx, 0xed1ce645
add eax, 0xed1ce645
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x1d
jmp 0x403d43
mov eax, 0x885d0b
jmp 0x404263
xor eax, eax
jmp 0x404263
mov eax, 0x15ca974
lea esi, [esp + eax]
add esi, 0xf0
xor eax, eax
mov dword [0x478240], eax
mov dword [0x478250], eax
mov dword [0x478254], 0xf
mov byte [0x478240], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478240
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4730b0]
movups xmmword [esp + 0x5b8], xmm0
mov word [esp + 0x5c8], 0x892c
xorps xmm0, xmm0
movups xmmword [esp + 0x5ca], xmm0
movups xmmword [esp + 0x5d7], xmm0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x4045ce
mov bl, byte [esp + eax + 0x5b8]
movzx edx, bl
lea edi, [ecx + 1]
cmp esi, edi
jae 0x404315
cmp ecx, eax
ja 0x4045d9
lea ebp, [ecx + 0x10]
cmp esi, ebp
jae 0x40434a
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x404376
cmp esi, edi
mov edi, esi
je 0x40453e
jmp 0x4042ca
je 0x4043d7
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x40437f
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x4044a5
lea edi, [eax - 0x180cfe5c]
lea ebx, [eax + edx]
add ebx, 0xe7f301a4
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x84
jmp 0x4044df
cmp esi, edi
jne 0x4043e1
lea ebx, [eax + 0x7be36c74]
lea ecx, [eax + edx]
add ecx, 0x7be36c74
and ebx, edx
add ebx, ebx
sub ecx, ebx
add cl, 0xd4
mov byte [esp + eax + 0x5b8], cl
jmp 0x40453e
cmp ebp, 9
jne 0x404435
lea ebp, [eax - 0x2fc435dc]
lea ebx, [edx + eax]
add ebx, 0xd03bca24
and ebp, edx
add ebp, ebp
sub ebx, ebp
add bl, 4
mov byte [esp + eax + 0x5b8], bl
movzx ebx, bl
not ecx
add ecx, eax
sub ecx, ebx
mov eax, ecx
mov ecx, edi
lea edi, [eax - 0x1aae1e70]
lea ebx, [eax + edx]
add ebx, 0xe551e190
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x10
mov byte [esp + eax + 0x5b8], bl
sub eax, esi
inc esi
mov bl, byte [esp + eax + 0x5b6]
add eax, 0xfffffffe
movzx edx, bl
add edx, ecx
jmp 0x4044e6
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x4044c0
lea edi, [eax + 0x6380a73c]
lea ebx, [eax + edx]
add ebx, 0x6380a73c
and edi, edx
mov byte [esp], 0x5c
add edi, edi
sub ebx, edi
add bl, byte [esp]
mov dword [esp], ebx
lea edi, [eax - 0x59f064b4]
lea ebx, [edx + eax]
add ebx, 0xa60f9b4c
and edi, edx
add edi, edi
sub ebx, edi
add bl, byte [esp]
add bl, 0xec
mov byte [esp + eax + 0x5b8], bl
mov ebx, dword [esp]
jmp 0x4044df
lea ebp, [ecx + 8]
cmp esi, ebp
jbe 0x4044ea
lea ebp, [eax + 0x64394bc]
mov dword [esp], edx
mov edx, dword [esp]
add edx, eax
add edx, 0x64394bc
mov dword [esp + 4], edx
and ebp, dword [esp]
add ebp, ebp
sub dword [esp + 4], ebp
mov edx, dword [esp + 4]
add dl, 0xdc
mov ebp, edx
cmp esi, edi
je 0x4043d7
lea ebx, [ecx + 3]
cmp esi, ebx
mov edx, dword [esp]
je 0x40437f
lea ebx, [ecx + 5]
cmp esi, ebx
jne 0x404535
lea edi, [eax - 0x6c0f9530]
lea ebx, [eax + edx]
add ebx, 0x93f06ad0
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x50
jmp 0x4044df
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x40453c
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x4042f3
jmp 0x404352
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x40451a
lea edi, [eax - 0x725329ec]
lea ebx, [eax + edx]
add ebx, 0x8dacd614
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x74
add esi, ecx
movzx edx, bl
not edx
add eax, edx
jmp 0x404541
cmp esi, edi
je 0x404352
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x40453c
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x404550
lea edi, [eax - 0x510bafe4]
lea ebx, [eax + edx]
add ebx, 0xaef4501c
and edi, edx
mov byte [esp], 0x3c
jmp 0x404401
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x4043ab
lea ebp, [ecx + 7]
cmp esi, ebp
jne 0x404302
jmp 0x4043d7
lea ebx, [ecx + 4]
cmp esi, ebx
jne 0x404574
mov edi, ecx
dec eax
mov ecx, edi
inc eax
cmp eax, 0x2f
jb 0x4042da
jmp 0x4045d5
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x404593
lea edi, [eax - 0x26df810c]
lea ebx, [eax + edx]
add ebx, 0xd9207ef4
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x54
jmp 0x4044df
cmp ecx, 7
ja 0x404352
lea ebx, [ecx + 2]
cmp esi, ebx
je 0x404352
mov edx, ebp
mov byte [esp + eax + 0x5b8], dl
jmp 0x404541
lea ebp, [ecx + 6]
cmp esi, ebp
je 0x4043d7
lea ebp, [eax + 0x1516176c]
mov dword [esp + 0xc], ebp
lea ebp, [eax + edx]
add ebp, 0x1516176c
mov dword [esp + 4], ebp
mov dword [esp], edx
mov ebp, dword [esp + 0xc]
and ebp, edx
add ebp, ebp
mov edx, dword [esp + 4]
sub edx, ebp
add dl, 0xc
jmp 0x404468
mov eax, 0x6dd3fc
jmp 0x4045de
xor eax, eax
jmp 0x4045de
mov eax, 0x157bc90
lea esi, [esp + eax]
add esi, 0x5b8
xor eax, eax
mov dword [0x478258], eax
mov dword [0x478268], eax
mov dword [0x47826c], 0xf
mov byte [0x478258], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478258
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4730c0]
movups xmmword [esp + 0x588], xmm0
mov word [esp + 0x598], 0x2d21
mov byte [esp + 0x59a], 0xc2
xorps xmm0, xmm0
movups xmmword [esp + 0x59b], xmm0
movups xmmword [esp + 0x5a8], xmm0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x404945
mov bl, byte [esp + eax + 0x588]
movzx edx, bl
lea edi, [ecx + 1]
cmp esi, edi
jae 0x4046f1
cmp ecx, eax
ja 0x404950
mov dword [esp], edx
lea ebp, [ecx + 0x10]
cmp esi, ebp
jae 0x404764
lea edx, [esi + ecx]
mov dword [esp + 4], edx
cmp edx, eax
jbe 0x404787
lea edx, [ecx + 4]
cmp esi, edx
jne 0x404816
lea edx, [eax + 0x165df260]
mov esi, dword [esp]
lea ebx, [eax + esi]
add ebx, 0x165df260
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x60
mov edi, ebx
lea edx, [eax - 0x36c9dbc8]
lea ebx, [eax + esi]
add ebx, 0xc9362438
and edx, esi
add edx, edx
sub ebx, edx
mov edx, edi
add bl, dl
add bl, 0x78
mov byte [esp + eax + 0x588], bl
mov ebx, edi
mov esi, dword [esp + 4]
jmp 0x404838
je 0x40475a
mov dword [esp], edx
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x4047ee
lea edx, [eax + 0x7a261b28]
mov ebp, dword [esp]
lea ebx, [eax + ebp]
add ebx, 0x7a261b28
and edx, ebp
add edx, edx
sub ebx, edx
add bl, 0xe8
mov byte [esp + eax + 0x588], bl
movzx edx, bl
not ecx
add eax, ecx
sub eax, edx
mov ecx, edi
lea edx, [eax + 0x529e16a0]
lea ebx, [eax + ebp]
add ebx, 0x529e16a0
and edx, ebp
add edx, edx
sub ebx, edx
add bl, 0xa0
mov byte [esp + eax + 0x588], bl
sub eax, esi
inc esi
mov bl, byte [esp + eax + 0x586]
add eax, 0xfffffffe
movzx edx, bl
add edx, ecx
jmp 0x40483d
cmp esi, edi
je 0x404845
lea edx, [ecx + 2]
cmp esi, edx
je 0x404880
lea edx, [ecx + 3]
cmp esi, edx
jne 0x404894
mov ebp, dword [esp]
jmp 0x40472e
lea edx, [ecx + 0x20]
cmp esi, edx
jbe 0x404841
mov dword [esp + 4], ecx
lea edx, [eax - 0x6b691468]
mov ebp, dword [esp]
lea ecx, [eax + ebp]
add ecx, 0x9496eb98
and edx, ebp
add edx, edx
sub ecx, edx
add cl, 0xd8
mov ebp, ecx
cmp esi, edi
mov ecx, dword [esp + 4]
je 0x40475a
lea edx, [ecx + 2]
cmp esi, edx
je 0x404701
lea edx, [ecx + 3]
cmp esi, edx
jne 0x4048cb
lea edx, [eax + 0x1a2e6830]
mov edi, dword [esp]
lea ebx, [eax + edi]
add ebx, 0x1a2e6830
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0xb0
jmp 0x404838
lea ebp, [ecx + 4]
cmp esi, ebp
mov edx, dword [esp]
jne 0x404676
lea edi, [eax - 0x63c828c8]
lea ebx, [eax + edx]
add ebx, 0x9c37d738
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x78
jmp 0x404838
lea edx, [ecx + 5]
cmp esi, edx
jne 0x404869
lea edx, [eax + 0x783de040]
mov edi, dword [esp]
lea ebx, [eax + edi]
add ebx, 0x783de040
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0x40
movzx edx, bl
not edx
add eax, edx
jmp 0x404885
cmp esi, edi
jne 0x404879
lea edx, [eax + 0x18462d48]
mov ebx, dword [esp]
lea ecx, [ebx + eax]
add ecx, 0x18462d48
and edx, ebx
add edx, edx
sub ecx, edx
add cl, 8
mov byte [esp + eax + 0x588], cl
jmp 0x404882
cmp esi, ebp
mov ebp, dword [esp]
je 0x40472e
jmp 0x40464d
lea edx, [ecx + 3]
cmp esi, edx
jne 0x4048a4
mov edi, ecx
dec eax
mov ecx, edi
inc eax
cmp eax, 0x30
jb 0x40465d
jmp 0x40494c
lea edx, [ecx + 5]
cmp esi, edx
jne 0x40468c
jmp 0x40475a
lea edx, [ecx + 4]
cmp esi, edx
jne 0x4048f5
lea edx, [eax + 0x946be48]
mov esi, dword [esp]
lea ebx, [eax + esi]
add ebx, 0x946be48
and edx, esi
add edx, edx
sub ebx, edx
add bl, 8
jmp 0x4046e8
lea edx, [ecx + 7]
cmp esi, edx
je 0x404882
cmp ecx, 7
ja 0x404845
lea edx, [ecx + 9]
cmp esi, edx
je 0x404845
mov edx, ecx
mov ecx, ebp
mov byte [esp + eax + 0x588], cl
mov ecx, edx
jmp 0x404885
lea edx, [ecx + 5]
cmp esi, edx
mov ebp, dword [esp]
jne 0x404919
lea edx, [eax - 0x45c94ac8]
lea ebx, [eax + ebp]
add ebx, 0xba36b538
and edx, ebp
add edx, edx
sub ebx, edx
jmp 0x404811
lea edx, [ecx + 2]
cmp esi, edx
je 0x40472e
mov dword [esp + 4], ecx
lea edx, [eax - 0x27880488]
lea ecx, [eax + ebp]
add ecx, 0xd877fb78
and edx, ebp
add edx, edx
sub ecx, edx
add cl, 0xb8
jmp 0x4047b1
mov eax, 0xd4f018
jmp 0x404955
xor eax, eax
jmp 0x404955
mov eax, 0x15cf4a0
lea esi, [esp + eax]
add esi, 0x588
xor edi, edi
mov dword [0x478270], edi
mov dword [0x478280], edi
mov dword [0x478284], 0xf
mov byte [0x478270], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478270
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4730d0]
movups xmmword [esp + 0xcc], xmm0
mov word [esp + 0xdc], 0xc5a2
mov dword [esp + 0xe2], edi
mov dword [esp + 0xde], edi
mov dword [esp + 0xe9], edi
mov dword [esp + 0xe5], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x404be1
mov bl, byte [esp + eax + 0xcc]
movzx edi, bl
lea edx, [ecx + 1]
cmp esi, edx
jae 0x404a13
cmp ecx, eax
ja 0x404bec
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x404a1c
mov ebx, edi
lea edi, [ecx + 2]
cmp esi, edi
jne 0x404a97
mov edx, ecx
jmp 0x404b8b
jne 0x404a63
mov edx, ecx
jmp 0x404b58
cmp ebp, 5
je 0x404af4
cmp esi, edx
je 0x404b6c
mov dword [esp], ebp
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x404b8b
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x404b9a
lea esi, [eax - 0x5b6ab831]
lea edx, [eax + edi]
add edx, 0xa49547cf
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x57
mov ebp, dword [esp]
jmp 0x404ad9
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x404af4
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x404b61
lea ebx, [eax + 0x13516ae5]
lea edx, [eax + edi]
add edx, 0x13516ae5
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xbd
add esi, ecx
mov ebp, esi
jmp 0x404ab8
lea edi, [ecx + 0xa]
cmp esi, edi
jne 0x404ae7
lea esi, [eax + 0x2287b9d4]
mov edi, ebx
lea edx, [eax + ebx]
add edx, 0x2287b9d4
and esi, ebx
add esi, esi
sub edx, esi
add dl, 0x34
lea esi, [eax + 0x25e05f61]
lea ebx, [edi + eax]
add ebx, 0x25e05f61
and esi, edi
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0x59
mov byte [esp + eax + 0xcc], bl
movzx edx, dl
not edx
add eax, edx
mov esi, ebp
jmp 0x404b8e
lea edi, [ecx + 5]
cmp esi, edi
mov edi, ebx
jne 0x4049c7
lea ebp, [eax + 0x3c8a6fd3]
lea ebx, [eax + edi]
add ebx, 0x3c8a6fd3
and ebp, edi
add ebp, ebp
sub ebx, ebp
add bl, 0x3b
mov byte [esp + eax + 0xcc], bl
movzx ebx, bl
not ecx
add ecx, eax
mov ebp, ecx
sub ebp, ebx
mov dword [esp], edx
mov edx, esi
mov esi, edi
lea edi, [ebp - 0x382087f4]
lea eax, [esi + ebp]
add eax, 0xc7df780c
and edi, esi
mov esi, edx
mov edx, dword [esp]
add edi, edi
sub eax, edi
add al, 0xac
mov byte [esp + ebp + 0xcc], al
add ebx, esi
inc esi
sub ecx, ebx
mov bl, byte [esp + ecx + 0xca]
add ecx, 0xfffffffe
mov eax, ecx
movzx ecx, bl
add ecx, edx
add eax, ecx
jmp 0x404b8c
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x4049f0
lea ebx, [eax + 0xf364eef]
lea ecx, [edi + eax]
add ecx, 0xf364eef
and ebx, edi
add ebx, ebx
sub ecx, ebx
add cl, 0x77
mov byte [esp + eax + 0xcc], cl
dec eax
mov ecx, edx
inc eax
cmp eax, 0x21
jb 0x4049d7
jmp 0x404be8
lea ebp, [ecx + 4]
cmp esi, ebp
je 0x404af4
lea ebp, [ecx + 6]
cmp esi, ebp
je 0x404a15
lea ebx, [ecx + 3]
cmp esi, ebx
je 0x404af4
cmp ecx, 5
ja 0x404b6c
lea ebx, [eax - 0x74aaf7c7]
lea edx, [eax + edi]
add edx, 0x8b550839
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x71
mov byte [esp + eax + 0xcc], dl
jmp 0x404b8e
mov eax, 0xb68e85
jmp 0x404bf1
xor eax, eax
jmp 0x404bf1
mov eax, 0x161864c
lea esi, [esp + eax]
add esi, 0xcc
xor edi, edi
mov dword [0x478288], edi
mov dword [0x478298], edi
mov dword [0x47829c], 0xf
mov byte [0x478288], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478288
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4730e0]
movups xmmword [esp + 0x408], xmm0
movdqa xmm0, xmmword [0x4730f0]
movdqu xmmword [esp + 0x418], xmm0
mov dword [esp + 0x428], edi
mov word [esp + 0x42c], 0
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp edi, eax
ja 0x40564a
movzx esi, byte [esp + eax + 0x408]
lea edx, [ecx + 1]
cmp edi, edx
mov dword [esp], esi
jae 0x404ebd
lea edx, [eax - 0x5d976465]
lea ebx, [eax + esi]
add ebx, 0xa2689b9b
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0xc3
mov edx, 0x1488c24
cmp ecx, eax
ja 0x405653
lea edx, [edi + ecx]
cmp edx, eax
jbe 0x404ee5
lea edx, [eax - 0x1604ba0d]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xe9fb45f3
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x5b
lea edx, [ecx + 0x80]
cmp edi, edx
je 0x4050d1
lea edx, [ecx + 0x40]
mov dword [esp + 4], edx
lea edx, [ecx + 0x200]
cmp edi, edx
sete dl
movd xmm0, ecx
pshufd xmm1, xmm0, 0
paddd xmm1, xmmword [0x473100]
movd xmm0, edi
pshufd xmm0, xmm0, 0
pcmpeqd xmm0, xmm1
mov ebp, ecx
lea ecx, [ebp + 0x28]
cmp edi, ecx
je 0x4050f7
pextrw ecx, xmm0, 6
test cl, 1
jne 0x405117
pextrw ecx, xmm0, 4
test cl, 1
jne 0x40515a
pextrw ecx, xmm0, 2
test cl, 1
jne 0x4051d8
movd ecx, xmm0
test cl, 1
jne 0x4051f8
test dl, 1
jne 0x405218
lea ecx, [ebp + 0x54]
mov esi, dword [esp + 4]
cmp esi, ecx
jb 0x40562b
lea ecx, [ebp + 0x4a]
lea edx, [ebp + 0x4f]
cmp esi, edx
jb 0x405238
lea edx, [ebp + 0x4b]
cmp esi, edx
jb 0x404e79
lea edx, [ebp + 0xc4]
cmp esi, edx
jb 0x404e93
lea edx, [ebp + 0x432]
cmp esi, edx
jb 0x405288
lea edx, [ebp + 0x8c]
cmp esi, edx
jb 0x4052ac
lea edx, [ebp + 0x5a]
cmp esi, edx
jb 0x4052d2
lea edi, [ebp + 0x50]
cmp esi, edi
jb 0x404e2e
lea ecx, [ebp + 0x58]
cmp edi, ecx
ja 0x405379
lea ecx, [ebp + 0x97]
cmp edi, ecx
mov edx, dword [esp]
ja 0x40539e
lea ecx, [ebp + 0x456]
cmp edi, ecx
ja 0x405431
lea ecx, [ebp + 0xba]
cmp edi, ecx
ja 0x405453
lea ecx, [ebp + 0x76]
cmp edi, ecx
ja 0x405475
lea ecx, [ebp + 0x5e]
cmp edi, ecx
ja 0x405494
lea ecx, [ebp + 0x59]
cmp edi, ecx
ja 0x4054b3
lea esi, [ebp + 0xb0]
add ebp, 0x10a
mov ecx, ebp
mov edi, esi
mov esi, ebx
lea ebx, [ecx + 0x80]
lea edx, [ecx + 0x200]
cmp edi, edx
sete dl
lea ebp, [ecx + 0x40]
mov dword [esp + 4], ebp
movd xmm0, ecx
pshufd xmm1, xmm0, 0
paddd xmm1, xmmword [0x473100]
movd xmm0, edi
pshufd xmm0, xmm0, 0
pcmpeqd xmm0, xmm1
mov ebp, ecx
cmp edi, ebx
mov ebx, esi
jne 0x404d18
jmp 0x4050d1
cmp ecx, eax
ja 0x40cc11
lea edx, [ecx + esi]
mov edi, esi
cmp edx, eax
ja 0x404cd8
jmp 0x405624
lea edx, [ecx + esi]
mov edi, esi
cmp edx, eax
ja 0x404cd8
lea edx, [eax + 0x2ecc7d29]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x2ecc7d29
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0xe1
jmp 0x404f14
jne 0x404f75
lea edx, [eax - 0x18c62d2f]
mov esi, dword [esp]
lea ebx, [eax + esi]
add ebx, 0xe739d2d1
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0x49
jmp 0x40541e
mov dword [esp + 4], edi
lea ebp, [eax + 0x5294c3b7]
mov esi, dword [esp]
lea edx, [esi + eax]
add edx, 0x5294c3b7
and ebp, esi
add ebp, ebp
sub edx, ebp
dec dl
lea ebp, [ecx + 0x400]
cmp edi, ebp
movzx edx, dl
movzx ebx, bl
cmovb ebx, edx
lea edx, [ecx + 0x80]
mov edi, dword [esp + 4]
cmp edi, edx
jae 0x404f9c
lea edx, [eax - 0x5d976465]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xa2689b9b
and edx, esi
mov edi, dword [esp + 4]
add edx, edx
sub ebx, edx
add bl, 0xc3
lea edx, [ecx + edi]
cmp edx, 0x40
mov dword [esp + 4], edi
jne 0x404ff4
lea edx, [eax + 0x3f506e2e]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x3f506e2e
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
sub bl, dl
add bl, 0xbe
jmp 0x4053bf
lea edx, [ecx + 3]
cmp edi, edx
jne 0x404fc9
lea edx, [eax - 0x4a52878d]
mov esi, dword [esp]
lea ebx, [eax + esi]
add ebx, 0xb5ad7873
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0xdb
jmp 0x40519f
lea edx, [ecx + 1]
cmp edi, edx
jne 0x40504e
lea edx, [eax - 0x5ad67892]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xa529876e
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0xfe
jmp 0x40541e
lea edx, [ecx + 2]
cmp edi, edx
jne 0x404ca5
lea edx, [eax - 0x5815057]
mov esi, dword [esp]
lea ebx, [eax + esi]
add ebx, 0xfa7eafa9
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x61
jmp 0x40519d
lea edx, [ecx + 0x40]
cmp edi, edx
jbe 0x405075
lea edx, [eax - 0x4d12ec11]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xb2ed13ef
and edx, esi
mov edi, dword [esp + 4]
add edx, edx
sub ebx, edx
add bl, 0x77
cmp edi, 5
ja 0x405137
lea edx, [ecx + 6]
cmp edi, edx
jbe 0x405321
lea edx, [eax + 0x581d7a6]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x581d7a6
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x76
jmp 0x4052c7
lea edx, [ecx + 5]
cmp edi, edx
jne 0x4050a2
lea edx, [eax - 0x47919bba]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xb86e6446
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x16
jmp 0x40519d
lea edx, [ecx + 1]
cmp edi, edx
jne 0x4051a9
lea edx, [eax - 0x841b4db]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xf7be4b25
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0xfd
jmp 0x4054d4
lea edx, [ecx + 7]
cmp edi, edx
jne 0x40525b
lea edx, [eax + 0x4210d2b2]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x4210d2b2
and edx, esi
mov edi, dword [esp + 4]
add edx, edx
sub ebx, edx
add bl, 0x22
jmp 0x4054f9
lea edx, [eax - 0x370d2366]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xc8f2dc9a
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0xca
mov dword [esp + 4], edi
jmp 0x4054d4
lea ecx, [eax + 0xdc413d0]
mov edx, dword [esp]
lea ebx, [edx + eax]
add ebx, 0xdc413d0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x50
jmp 0x4054af
lea ecx, [eax + 0x52954b06]
mov edx, dword [esp]
lea ebx, [edx + eax]
add ebx, 0x52954b06
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd6
jmp 0x405490
lea edx, [eax - 0x580c908]
mov ebp, edi
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xfa7f36f8
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, dl
add bl, 0x38
jmp 0x405179
lea ecx, [eax - 0x68997dc4]
mov edx, dword [esp]
lea ebx, [edx + eax]
add ebx, 0x9766823c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x5c
mov ecx, ebp
mov ebp, edi
lea edi, [eax - 0x63182d6d]
mov esi, edx
add edx, eax
add edx, 0x9ce7d293
and edi, esi
add edi, edi
sub edx, edi
add dl, bl
add dl, 0xfb
mov byte [esp + eax + 0x408], dl
mov edi, ebp
add edi, ecx
movzx edx, bl
not edx
jmp 0x405420
lea edx, [ecx + 2]
cmp edi, edx
jne 0x40534e
lea edx, [eax + 0x3c8f825b]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x3c8f825b
and edx, esi
mov edi, dword [esp + 4]
add edx, edx
sub ebx, edx
add bl, 0x83
jmp 0x4054f8
lea ecx, [eax + 0x2108f0a8]
mov edx, dword [esp]
lea ebx, [edx + eax]
add ebx, 0x2108f0a8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x68
jmp 0x40544c
lea ecx, [eax + 0x65da27de]
mov edx, dword [esp]
lea ebx, [edx + eax]
add ebx, 0x65da27de
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xee
jmp 0x4053b9
lea ecx, [eax - 0x108369b6]
mov edx, dword [esp]
lea ebx, [edx + eax]
add ebx, 0xef7c964a
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xfa
jmp 0x405397
mov edx, dword [esp]
lea ebx, [edx + eax]
add ebx, 0x6058d787
add eax, 0x6058d787
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x4f
xor eax, eax
mov edi, esi
jmp 0x404c6f
lea edx, [ecx + 9]
cmp edi, edx
jne 0x404f41
lea edx, [eax - 0x344cbee2]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xcbb3411e
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0x2e
jmp 0x4054d4
lea edx, [eax + 0x739db45f]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x739db45f
and edx, esi
mov edi, dword [esp + 4]
add edx, edx
sub ebx, edx
add bl, 0x67
jmp 0x404f41
lea edx, [eax - 0x2bfdd35]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xfd4022cb
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x73
cmp ecx, 2
ja 0x4052fd
mov edi, dword [esp + 4]
jmp 0x4052f1
lea edx, [eax + 0x42115a01]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x42115a01
and edx, esi
mov edi, dword [esp + 4]
add edx, edx
sub ebx, edx
add bl, 0xf9
mov byte [esp + eax + 0x408], bl
jmp 0x405422
lea edx, [eax - 0x4a52003e]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xb5adffc2
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, bl
add bl, 0x64
jmp 0x4054d4
lea edx, [ecx + 1]
cmp edi, edx
jne 0x4054ff
lea edx, [eax + 0x4a530edc]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x4a530edc
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0xfc
jmp 0x40541e
lea edx, [ecx + 3]
cmp edi, edx
jne 0x405526
lea edx, [eax + 0xb0327fd]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xb0327fd
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x15
jmp 0x40519d
add ebp, 0x56
lea ecx, [eax + 0x6e1c6408]
mov edx, dword [esp]
lea ebx, [edx + eax]
add ebx, 0x6e1c6408
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc8
mov ecx, ebp
jmp 0x40541e
add ebp, 0x56
lea ecx, [eax - 0x8412d8c]
lea ebx, [edx + eax]
add ebx, 0xf7bed274
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd4
mov dword [esp + 4], edi
mov ecx, ebp
lea edi, [eax - 0x1e46f637]
mov esi, edx
add edx, eax
add edx, 0xe1b909c9
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x81
mov byte [esp + eax + 0x408], dl
lea edi, [ecx + 1]
movzx edx, dl
not ecx
sub eax, edx
add eax, ecx
mov ecx, edi
lea edi, [eax - 0x7bde5a9c]
lea edx, [eax + esi]
add edx, 0x8421a564
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x44
mov byte [esp + eax + 0x408], dl
mov edi, dword [esp + 4]
sub eax, edi
inc edi
movzx edx, byte [esp + eax + 0x406]
add eax, 0xfffffffe
add edx, ecx
add eax, edx
inc eax
cmp eax, 0x26
jb 0x404c6f
jmp 0x405651
add ebp, 0x56
lea ecx, [eax + 0x3c9009aa]
lea ebx, [edx + eax]
add ebx, 0x3c9009aa
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x5a
mov ecx, ebp
jmp 0x40519f
add ebp, 0x56
lea ecx, [eax - 0x7e9ebf20]
lea ebx, [edx + eax]
add ebx, 0x816140e0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe0
mov ecx, ebp
jmp 0x40519d
add ebp, 0x56
lea ecx, [eax + 0xb03af4c]
lea ebx, [edx + eax]
add ebx, 0xb03af4c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xec
mov ecx, ebp
jmp 0x4054f9
add ebp, 0x56
lea ecx, [eax + 0x4fd4e682]
lea ebx, [edx + eax]
add ebx, 0x4fd4e682
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x72
mov ecx, ebp
jmp 0x4054f8
add ebp, 0x56
lea ecx, [eax - 0x6b59e248]
lea ebx, [edx + eax]
add ebx, 0x94a61db8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf8
mov dword [esp + 4], edi
mov ecx, ebp
lea edi, [eax + 0x58169b5d]
mov esi, edx
add edx, eax
add edx, 0x58169b5d
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x75
mov byte [esp + eax + 0x408], dl
mov edi, dword [esp + 4]
inc ecx
dec eax
jmp 0x405422
lea edx, [ecx + 2]
cmp edi, edx
jne 0x40554d
lea edx, [eax - 0x70dbb9ee]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x8f244612
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x82
jmp 0x4053ed
lea edx, [ecx + 5]
cmp edi, edx
jne 0x405576
lea edx, [eax + 0x4fd45f33]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x4fd45f33
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x9b
jmp 0x40519f
lea edx, [ecx + 3]
cmp edi, edx
jne 0x40559f
lea edx, [eax - 0x2c0a82b8]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xd3f57d48
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 8
jmp 0x4053bf
lea edx, [ecx + 4]
cmp edi, edx
jne 0x4055ca
lea edx, [eax - 0x6b5a6997]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x94a59669
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0x21
jmp 0x4053bf
lea edx, [ecx + 5]
cmp edi, edx
jne 0x4055f7
lea edx, [eax - 0x5d96dd16]
mov ebp, edi
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0xa26922ea
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0x9a
jmp 0x405179
lea edx, [ecx + 8]
cmp edi, edx
jne 0x40501a
lea edx, [eax + 0x1e4804d5]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x1e4804d5
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0x2d
jmp 0x40541e
lea edx, [ecx + 4]
cmp edi, edx
jne 0x4052c7
lea edx, [eax + 0x70dcc88c]
mov esi, dword [esp]
lea ebx, [esi + eax]
add ebx, 0x70dcc88c
and edx, esi
add edx, edx
sub ebx, edx
mov edx, esi
add bl, 0x2c
jmp 0x4054d4
mov edi, esi
jmp 0x404ee9
mov ecx, dword [esp]
lea ebx, [ecx + eax]
add ebx, 0x1b87a051
add eax, 0x1b87a051
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0xc9
jmp 0x404c5f
mov edx, 0x7127bf
jmp 0x405653
xor edx, edx
lea esi, [esp + edx]
add esi, 0x408
xor edi, edi
mov dword [0x4782a0], edi
mov dword [0x4782b0], edi
mov dword [0x4782b4], 0xf
mov byte [0x4782a0], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4782a0
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473110]
movups xmmword [esp + 0x480], xmm0
movaps xmm0, xmmword [0x473120]
movups xmmword [esp + 0x490], xmm0
mov dword [esp + 0x4a4], edi
mov dword [esp + 0x4a0], edi
mov dword [esp + 0x4a9], edi
mov dword [esp + 0x4a5], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x4059fc
mov dl, byte [esp + eax + 0x480]
movzx edi, dl
lea ebx, [ecx + 1]
cmp esi, ebx
jae 0x405758
cmp ecx, eax
ja 0x405a07
lea ebp, [ecx + 8]
cmp esi, ebp
jae 0x4057d7
mov dword [esp], edi
lea edi, [esi + ecx]
cmp edi, eax
jbe 0x405814
lea edx, [ecx + 0x20]
cmp esi, edx
mov edi, dword [esp]
je 0x40581b
lea edx, [ecx + 2]
cmp esi, edx
je 0x4058ed
lea edx, [ecx + 0xa]
cmp esi, edx
jne 0x405929
lea edi, [eax - 0x61f968f0]
mov ebp, dword [esp]
lea edx, [eax + ebp]
add edx, 0x9e069710
and edi, ebp
add edi, edi
sub edx, edi
add dl, 0x90
jmp 0x4058b4
jne 0x40575e
mov ebx, ecx
jmp 0x4057cb
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x40583f
mov dword [esp + 4], esi
mov esi, edi
lea edi, [eax - 0x32a60f24]
lea edx, [eax + esi]
add edx, 0xcd59f0dc
and edi, esi
add edi, edi
sub edx, edi
add dl, 0xfc
mov byte [esp + eax + 0x480], dl
movzx edx, dl
not ecx
add ecx, eax
mov edi, ecx
sub edi, edx
lea ebp, [edi - 0x37e83590]
lea eax, [edi + esi]
add eax, 0xc817ca70
and ebp, esi
mov esi, dword [esp + 4]
add ebp, ebp
sub eax, ebp
add al, 0xf0
mov byte [esp + edi + 0x480], al
add edx, esi
inc esi
sub ecx, edx
mov dl, byte [esp + ecx + 0x47e]
add ecx, 0xfffffffe
mov eax, ecx
movzx ecx, dl
add ecx, ebx
add eax, ecx
jmp 0x4058ee
cmp esi, ebx
je 0x40581b
mov dword [esp], edi
lea edi, [ecx + 3]
cmp esi, edi
je 0x4058eb
lea edi, [ecx + 2]
cmp esi, edi
jne 0x4058ff
lea edi, [eax + 0x6781a5c4]
mov ebp, dword [esp]
lea edx, [eax + ebp]
add edx, 0x6781a5c4
and edi, ebp
add edi, edi
sub edx, edi
add dl, 0xa4
jmp 0x4058b4
cmp esi, ebx
mov edi, dword [esp]
jne 0x405860
lea edx, [eax - 0x1d9d7574]
lea ecx, [eax + edi]
add ecx, 0xe2628a8c
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x2c
mov byte [esp + eax + 0x480], cl
jmp 0x4058ed
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x405893
lea ebx, [eax - 0x39d7a6a4]
lea edx, [eax + edi]
add edx, 0xc628595c
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x7c
jmp 0x4058d5
lea edi, [ecx + 2]
cmp esi, edi
je 0x4058ed
lea edi, [ecx + 4]
cmp esi, edi
jne 0x405951
lea edi, [eax - 0x7558a7f4]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x8aa7580c
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0xac
jmp 0x4058d5
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x4058e0
lea ebx, [eax - 0x445bf37c]
lea edx, [eax + edi]
add edx, 0xbba40c84
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x64
mov ebp, edi
lea edi, [eax - 0x2821c24c]
lea ebx, [eax + ebp]
add ebx, 0xd7de3db4
and edi, ebp
add edi, edi
sub ebx, edi
add bl, dl
add bl, 0x14
mov byte [esp + eax + 0x480], bl
add esi, ecx
movzx edx, dl
not edx
add eax, edx
jmp 0x4058f0
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x4056f3
mov ebx, ecx
dec eax
mov ecx, ebx
inc eax
cmp eax, 0x2d
jb 0x4056da
jmp 0x405a03
lea edi, [ecx + 4]
cmp esi, edi
mov edi, dword [esp]
jne 0x405706
mov ebx, edi
lea edi, [eax + 0x52790c14]
lea edx, [eax + ebx]
add edx, 0x52790c14
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0x74
jmp 0x4058d7
lea edx, [ecx + 0x2a]
cmp esi, edx
jne 0x405978
lea edi, [eax - 0x6c7db5c8]
mov ebx, esi
mov esi, dword [esp]
lea edx, [eax + esi]
add edx, 0x93824a38
and edi, esi
mov esi, ebx
add edi, edi
sub edx, edi
add dl, 0x78
jmp 0x4058d5
lea edi, [ecx + 5]
cmp esi, edi
jne 0x405988
lea edi, [eax - 0x7fdcf4cc]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x80230b34
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0x94
jmp 0x4058d7
cmp esi, ebp
mov edi, dword [esp]
je 0x405769
jmp 0x4056ca
lea edi, [ecx + 3]
cmp esi, edi
mov edi, dword [esp]
je 0x405769
lea edi, [ecx + 9]
cmp esi, edi
je 0x40575a
cmp esi, 8
ja 0x4059da
lea edx, [ecx + 7]
cmp esi, edx
mov edi, dword [esp]
je 0x40581b
mov ebx, edi
lea edi, [eax - 0x542266c]
lea edx, [eax + ebx]
add edx, 0xfabdd994
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0xf4
mov byte [esp + eax + 0x480], dl
jmp 0x4058f0
lea edi, [eax - 0x22df9be0]
mov ebp, dword [esp]
lea ebx, [eax + ebp]
add ebx, 0xdd206420
and edi, ebp
add edi, edi
sub ebx, edi
add dl, bl
add dl, 0x20
jmp 0x4058b4
mov eax, 0xcc0904
jmp 0x405a0c
xor eax, eax
jmp 0x405a0c
mov eax, 0x14e2f70
lea esi, [esp + eax]
add esi, 0x480
xor edi, edi
mov dword [0x4782b8], edi
mov dword [0x4782c8], edi
mov dword [0x4782cc], 0xf
mov byte [0x4782b8], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4782b8
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473130]
movups xmmword [esp + 0x190], xmm0
mov dword [esp + 0x1a0], 0x43aabeab
mov dword [esp + 0x1a4], 0x80acbe9e
mov word [esp + 0x1a8], 0x1dba
mov dword [esp + 0x1ae], edi
mov dword [esp + 0x1aa], edi
mov dword [esp + 0x1b1], edi
mov dword [esp + 0xc], eax
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ebp, dword [eax]
xor ecx, ecx
mov eax, 0x676395
cmp esi, ecx
ja 0x4064d2
movzx edx, byte [esp + ecx + 0x190]
lea eax, [ecx + 0x77190389]
lea ebx, [ecx + edx]
add ebx, 0x77190389
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x41
lea eax, [ecx - 0x3af2b5c3]
mov dword [esp], ecx
mov ecx, dword [esp]
add ecx, edx
add ecx, 0xc50d4a3d
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0x55
mov dword [esp + 0x10], ecx
mov edi, dword [esp]
lea eax, [edi - 0x439d1baf]
lea ecx, [edi + edx]
add ecx, 0xbc62e451
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0xc9
mov dword [esp + 0x14], ecx
lea eax, [edi - 0x31cf22c1]
and eax, edx
add eax, eax
mov dword [esp + 4], edx
add edx, edi
add edx, 0xce30dd3f
sub edx, eax
add dl, 0x47
mov dword [esp + 8], ebx
lea edi, [ebp + 1]
mov eax, ebx
cmp esi, edi
jb 0x405b61
je 0x405f53
lea eax, [ebp + 2]
cmp esi, eax
je 0x405f77
lea eax, [ebp + 4]
cmp esi, eax
je 0x405f9a
lea edi, [ebp + 5]
mov eax, dword [esp + 0xc]
cmp esi, edi
je 0x405fbe
cmp ebp, dword [esp]
ja 0x4064c9
lea edi, [esi + ebp]
cmp edi, dword [esp]
jbe 0x405ec9
lea eax, [ebp + 8]
lea ebx, [ebp + 1]
cmp esi, eax
je 0x405cf5
lea eax, [ebp + 4]
cmp esi, eax
je 0x405d3d
cmp esi, ebx
je 0x405d65
lea eax, [ebp + 0x41]
cmp esi, eax
je 0x405d8e
lea eax, [ebp + 0x1000]
cmp esi, eax
je 0x405dd1
lea eax, [ebp + 0x200]
cmp esi, eax
je 0x405df4
lea edi, [ebp + 0x42]
cmp esi, edi
je 0x405e22
lea eax, [ebp + 0x20]
cmp esi, eax
je 0x405e46
lea eax, [ebp + 9]
cmp esi, eax
je 0x405e70
lea eax, [ebp + 0x64]
cmp edi, eax
jb 0x4064a1
lea eax, [ebp + 0x4d]
cmp edi, eax
jb 0x405e94
lea eax, [ebp + 0x49]
cmp edi, eax
jb 0x405cd8
lea eax, [ebp + 0x46]
cmp edi, eax
jae 0x405c26
add ebp, 0x44
cmp ebp, dword [esp]
ja 0x4064c9
lea eax, [edi + ebp]
mov esi, edi
cmp eax, dword [esp]
ja 0x405b76
jmp 0x405ec3
lea eax, [ebp + 0x9e]
cmp edi, eax
jae 0x405c49
lea eax, [edi + ebp]
add eax, 0x44
add ebp, 0x44
mov esi, edi
cmp eax, dword [esp]
ja 0x405b76
jmp 0x405fe2
lea eax, [ebp + 0xa5]
cmp edi, eax
jb 0x406005
lea esi, [ebp + 0x42c]
cmp edi, esi
jb 0x406081
lea eax, [ebp + 0x492]
cmp esi, eax
ja 0x40613f
lea eax, [ebp + 0x456]
cmp esi, eax
ja 0x406169
lea eax, [ebp + 0x438]
cmp esi, eax
ja 0x406193
lea eax, [ebp + 0x434]
cmp esi, eax
ja 0x406247
lea eax, [ebp + 0x488]
cmp esi, eax
ja 0x406271
lea eax, [ebp + 0x48f]
cmp esi, eax
ja 0x40629b
lea eax, [ebp + 0x816]
cmp esi, eax
ja 0x4062c5
lea esi, [ebp + 0x4a8]
add ebp, 0x4ae
jmp 0x405b76
add ebp, 0x44
mov esi, edi
mov eax, edx
mov dword [esp + 0xc], eax
cmp edi, dword [esp]
mov ebx, dword [esp + 8]
jbe 0x405b2d
jmp 0x40cbf3
mov ecx, dword [esp]
lea eax, [ecx + 0x2cbf84de]
mov ebp, dword [esp + 4]
lea edx, [ecx + ebp]
add edx, 0x2cbf84de
and eax, ebp
add eax, eax
sub edx, eax
add dl, 0xee
mov edi, esi
mov eax, dword [esp]
lea ecx, [eax - 0x14ef93e1]
mov eax, dword [esp]
add eax, ebp
add eax, 0xeb106c1f
and ecx, ebp
add ecx, ecx
sub eax, ecx
add al, 0x27
mov ecx, dword [esp]
mov byte [esp + ecx + 0x190], al
jmp 0x405d5f
mov eax, dword [esp]
add eax, 0x1af18bf0
mov ecx, dword [esp + 4]
mov edx, dword [esp]
add edx, ecx
add edx, 0x1af18bf0
and eax, ecx
add eax, eax
sub edx, eax
add dl, 0x70
mov edi, esi
mov ebp, ebx
mov ebx, edx
jmp 0x405d86
mov ecx, dword [esp]
lea eax, [ecx + 0x9239302]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0x9239302
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xf2
mov edi, esi
dec dword [esp]
jmp 0x40622d
mov ecx, dword [esp]
lea eax, [ecx - 0x8aa65ec]
mov edi, dword [esp + 4]
lea ebx, [ecx + edi]
add ebx, 0xf7559a14
and eax, edi
add eax, eax
sub ebx, eax
add bl, 0x74
mov ecx, dword [esp]
lea edx, [ecx - 0x26bd8ccf]
lea eax, [ecx + edi]
add eax, 0xd9427331
and edx, edi
add edx, edx
sub eax, edx
add al, bl
add al, 0xa9
mov byte [esp + ecx + 0x190], al
jmp 0x405df0
mov ecx, dword [esp]
lea eax, [ecx - 0x1a785eda]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0xe587a126
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xf6
add esi, ebp
jmp 0x405e13
mov ecx, dword [esp]
lea eax, [ecx - 0x2c4657c8]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0xd3b9a838
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x78
mov edi, esi
movzx eax, bl
not eax
add dword [esp], eax
jmp 0x40622d
mov ecx, dword [esp]
lea eax, [ecx - 0x3e1450b6]
mov ebx, dword [esp + 4]
lea edx, [ecx + ebx]
add edx, 0xc1ebaf4a
and eax, ebx
add eax, eax
sub edx, eax
add dl, 0xfa
jmp 0x4061b8
mov ecx, dword [esp]
lea eax, [ecx - 0x4fe249a4]
mov ebx, dword [esp + 4]
lea edx, [ecx + ebx]
add edx, 0xb01db65c
and eax, ebx
add eax, eax
sub edx, eax
add dl, 0x7c
mov dword [esp + 8], edx
mov edi, esi
jmp 0x4061ef
mov ecx, dword [esp]
lea eax, [ecx - 0x61b04292]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0x9e4fbd6e
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xfe
jmp 0x406226
mov eax, dword [esp + 4]
mov ecx, dword [esp]
lea edx, [ecx + eax]
add edx, 0xdffed62d
add ecx, 0xdffed62d
and ecx, eax
add ecx, ecx
sub edx, ecx
add dl, 0xc5
mov dword [esp + 0xc], edx
add ebp, 0x44
xor ecx, ecx
mov esi, edi
jmp 0x405aa1
mov esi, edi
mov eax, dword [esp + 0x14]
lea edx, [ebp + 0x200]
cmp esi, edx
movzx edi, byte [esp + 0x10]
movzx edx, al
cmovb edx, edi
mov edi, esi
lea eax, [ebp + 9]
cmp edi, eax
mov ebx, dword [esp + 8]
jae 0x405ef2
mov edx, dword [esp + 4]
jmp 0x406027
lea eax, [ebp + 1]
cmp edi, eax
jne 0x405f1f
mov esi, dword [esp]
lea eax, [esi - 0x75e56b86]
mov edx, dword [esp + 4]
lea ebx, [esi + edx]
add ebx, 0x8a1a947a
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xaa
mov esi, edi
jmp 0x406226
lea eax, [ebp + 3]
cmp edi, eax
jne 0x4062ef
mov edx, dword [esp]
lea eax, [edx + 0x667ea29e]
mov ebx, dword [esp + 4]
add edx, ebx
add edx, 0x667ea29e
and eax, ebx
add eax, eax
sub edx, eax
add dl, 0xae
mov dword [esp + 8], edx
mov esi, edi
jmp 0x4061bc
mov edi, dword [esp]
lea eax, [edi + 0x654b0a9b]
mov edx, dword [esp + 4]
lea ebx, [edi + edx]
add ebx, 0x654b0a9b
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xc3
jmp 0x406226
mov edx, dword [esp]
lea eax, [edx + 0x41af18bf]
mov ebx, dword [esp + 4]
add edx, ebx
add edx, 0x41af18bf
and eax, ebx
add eax, eax
sub edx, eax
add dl, 0xc7
jmp 0x4061b8
mov edi, dword [esp]
lea eax, [edi + 0x1e1326e3]
mov edx, dword [esp + 4]
lea ebx, [edi + edx]
add ebx, 0x1e1326e3
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xcb
jmp 0x405df0
mov edx, dword [esp]
lea eax, [edx + 0xc452df5]
mov edi, dword [esp + 4]
lea ebx, [edx + edi]
add ebx, 0xc452df5
and eax, edi
add eax, eax
sub ebx, eax
add bl, 0x4d
jmp 0x405dad
mov edx, dword [esp]
lea eax, [edx - 0x556b149d]
mov esi, dword [esp + 4]
add edx, esi
add edx, 0xaa94eb63
and eax, esi
add eax, eax
sub edx, eax
add dl, 0x4b
jmp 0x405ede
add ebp, 0x44
mov ecx, dword [esp]
lea eax, [ecx - 0x67390d8b]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0x98c6f275
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xcd
lea eax, [edi + ebp]
cmp eax, 0x64
jne 0x406059
mov ecx, dword [esp]
lea eax, [ecx + 0x505b76ba]
lea ebx, [ecx + edx]
add ebx, 0x505b76ba
and eax, edx
add eax, eax
sub ebx, eax
sub bl, dl
add bl, 0xea
mov dword [esp + 8], ebx
mov esi, edi
mov ebx, edx
jmp 0x4061bc
lea eax, [ebp + 0x5a]
cmp edi, eax
jbe 0x406112
mov esi, dword [esp]
lea eax, [esi + 0x60f5d7a5]
lea ebx, [esi + edx]
add ebx, 0x60f5d7a5
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x7d
jmp 0x4060a3
add ebp, 0x44
mov ecx, dword [esp]
lea eax, [ecx - 0x79070679]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0x86f8f987
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x4f
cmp edi, 0x3ff
ja 0x4060ec
lea eax, [ebp + 3]
cmp edi, eax
jbe 0x40631a
mov esi, dword [esp]
lea eax, [esi + 0x260321e2]
lea ebx, [esi + edx]
add ebx, 0x260321e2
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xd2
cmp ebp, 0x3ff
ja 0x40639f
mov eax, dword [esp]
mov byte [esp + eax + 0x190], bl
jmp 0x40622d
mov esi, dword [esp]
lea eax, [esi + 0x62296fa8]
lea ebx, [esi + edx]
add ebx, 0x62296fa8
and eax, edx
add eax, eax
sub ebx, eax
add bl, dl
add bl, 0x68
mov esi, edi
mov edi, edx
jmp 0x405dad
lea eax, [ebp + 1]
cmp edi, eax
jne 0x406345
mov ecx, dword [esp]
lea eax, [ecx + 0x4f27deb7]
mov ebp, edx
add edx, ecx
add edx, 0x4f27deb7
and eax, ebp
add eax, eax
sub edx, eax
dec dl
mov ebx, edi
jmp 0x405d16
add ebp, 0x42e
mov ecx, dword [esp]
lea eax, [ecx - 0x4925e6a8]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0xb6da1958
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x98
jmp 0x406226
add ebp, 0x42e
mov ecx, dword [esp]
lea eax, [ecx - 0x5af3df96]
mov ebx, dword [esp + 4]
lea edx, [ecx + ebx]
add edx, 0xa50c206a
and eax, ebx
add eax, eax
sub edx, eax
add dl, 0x1a
jmp 0x405e65
add ebp, 0x42e
mov ecx, dword [esp]
lea eax, [ecx - 0x6cc1d884]
mov ebx, dword [esp + 4]
lea edx, [ecx + ebx]
add edx, 0x933e277c
and eax, ebx
add eax, eax
sub edx, eax
add dl, 0x9c
mov dword [esp + 8], edx
mov ecx, dword [esp]
lea edx, [ecx - 0x388b85bd]
lea eax, [ecx + ebx]
add eax, 0xc7747a43
and edx, ebx
add edx, edx
sub eax, edx
add al, 0x2b
mov byte [esp + ecx + 0x190], al
lea edx, [ebp + 1]
movzx eax, al
not ebp
sub ecx, eax
add ecx, ebp
mov dword [esp], ecx
mov edi, esi
mov ebp, edx
mov ecx, dword [esp]
lea edx, [ecx + 0x3e8d7dcc]
lea eax, [ecx + ebx]
add eax, 0x3e8d7dcc
and edx, ebx
add edx, edx
sub eax, edx
add al, 0x6c
mov byte [esp + ecx + 0x190], al
sub ecx, edi
inc edi
movzx edx, byte [esp + ecx + 0x18e]
add ecx, 0xfffffffe
mov dword [esp], ecx
mov esi, edi
mov ebx, dword [esp + 8]
add edx, ebp
add dword [esp], edx
mov edi, esi
mov eax, dword [esp]
inc eax
mov esi, edi
mov dword [esp + 0xc], ebx
mov ecx, eax
cmp eax, 0x25
jb 0x405aa1
jmp 0x4064d0
add ebp, 0x42e
mov ecx, dword [esp]
lea eax, [ecx - 0x7e8fd172]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0x81702e8e
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x1e
jmp 0x405e13
add ebp, 0x42e
mov ecx, dword [esp]
lea eax, [ecx + 0x6fa235a0]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0x6fa235a0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xa0
jmp 0x405df0
add ebp, 0x42e
mov ecx, dword [esp]
lea eax, [ecx + 0x5dd43cb2]
mov edi, dword [esp + 4]
lea ebx, [ecx + edi]
add ebx, 0x5dd43cb2
and eax, edi
add eax, eax
sub ebx, eax
add bl, 0x22
jmp 0x405dad
add ebp, 0x42e
mov ecx, dword [esp]
lea eax, [ecx + 0x4c0643c4]
mov edx, dword [esp + 4]
lea ebx, [ecx + edx]
add ebx, 0x4c0643c4
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xa4
jmp 0x405d84
lea eax, [ebp + 2]
cmp edi, eax
jne 0x406370
mov esi, dword [esp]
lea eax, [esi + 0x54b0a9b0]
mov edx, dword [esp + 4]
lea ebx, [esi + edx]
add ebx, 0x54b0a9b0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x30
jmp 0x405e15
lea eax, [ebp + 1]
cmp edi, eax
jne 0x4063c7
mov esi, dword [esp]
lea eax, [esi + 0x143528f4]
lea ebx, [esi + edx]
add ebx, 0x143528f4
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x54
jmp 0x405f18
lea eax, [ebp + 2]
cmp edi, eax
jne 0x4063ee
mov esi, dword [esp]
lea eax, [esi + 0x2b8becdb]
lea ebx, [esi + edx]
add ebx, 0x2b8becdb
and eax, edx
add eax, eax
sub ebx, eax
add bl, 3
jmp 0x405d86
lea eax, [ebp + 7]
cmp edi, eax
jne 0x406415
mov esi, dword [esp]
lea eax, [esi + 0x1f46bee6]
mov edx, dword [esp + 4]
lea ebx, [esi + edx]
add ebx, 0x1f46bee6
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xb6
jmp 0x405d86
mov ecx, dword [esp]
lea eax, [ecx + 0x73f76896]
mov esi, edx
add edx, ecx
add edx, 0x73f76896
and eax, esi
add eax, eax
sub edx, eax
add dl, dl
add dl, 0xcc
inc ebp
mov ebx, ebp
mov ebp, esi
jmp 0x405d16
lea eax, [ebp + 2]
cmp edi, eax
jne 0x40641c
mov esi, dword [esp]
lea eax, [esi - 0xf66c8e8]
lea ebx, [esi + edx]
add ebx, 0xf0993718
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x58
jmp 0x40604c
lea eax, [ebp + 4]
cmp edi, eax
jne 0x406449
mov esi, dword [esp]
lea eax, [esi - 0x1babf6dd]
lea ebx, [esi + edx]
add ebx, 0xe4540923
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xb
jmp 0x40604c
mov ebx, edx
jmp 0x405ee9
lea eax, [ebp + 5]
cmp edi, eax
jne 0x4060d1
mov esi, dword [esp]
lea eax, [esi - 0x3302bac4]
lea ebx, [esi + edx]
add ebx, 0xccfd453c
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x5c
mov esi, edi
jmp 0x405df0
lea eax, [ebp + 3]
cmp edi, eax
jne 0x406476
mov esi, dword [esp]
lea eax, [esi - 0x2d79efcb]
lea ebx, [esi + edx]
add ebx, 0xd2861035
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x8d
mov dword [esp + 8], ebx
mov ebx, edx
jmp 0x4061ef
lea eax, [ebp + 6]
cmp edi, eax
jne 0x4060a3
mov esi, dword [esp]
lea eax, [esi - 0x3f47e8b9]
lea ebx, [esi + edx]
add ebx, 0xc0b81747
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xf
jmp 0x405f18
mov eax, dword [esp + 4]
mov ecx, dword [esp]
lea edx, [ecx + eax]
add edx, 0xf1cccf1b
add ecx, 0xf1cccf1b
and ecx, eax
add ecx, ecx
sub edx, ecx
add dl, 0x43
mov dword [esp + 0xc], edx
jmp 0x405a91
mov eax, 0x14e600c
jmp 0x4064d2
xor eax, eax
lea esi, [esp + eax]
add esi, 0x190
xor edi, edi
mov dword [0x4782d0], edi
mov dword [0x4782e0], edi
mov dword [0x4782e4], 0xf
mov byte [0x4782d0], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4782d0
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473140]
movups xmmword [esp + 0x5e8], xmm0
movaps xmm0, xmmword [0x473150]
movups xmmword [esp + 0x5f8], xmm0
movaps xmm0, xmmword [0x473160]
movups xmmword [esp + 0x608], xmm0
mov dword [esp + 0x618], 0x6f786477
mov byte [esp + 0x61c], 0xd4
mov dword [esp + 0x621], edi
mov dword [esp + 0x61d], edi
mov dword [esp + 0x628], edi
mov dword [esp + 0x624], edi
call fcn.0046d640
mov ebp, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp ebp, eax
ja 0x406795
mov bl, byte [esp + eax + 0x5e8]
movzx esi, bl
lea edi, [ecx + 1]
cmp ebp, edi
jae 0x4065ed
cmp ecx, eax
ja 0x4067a0
lea ebx, [ecx + ebp]
cmp ebx, eax
jbe 0x406640
lea ebx, [ecx + 4]
cmp ebp, ebx
je 0x4066ef
lea ebx, [ecx + 8]
cmp ebp, ebx
je 0x40670e
lea ebx, [ecx + 0x42]
cmp ebp, ebx
je 0x4066e0
lea ebx, [ecx + 2]
cmp ebp, ebx
jne 0x40671d
lea edi, [eax + 0x5cf90420]
lea edx, [eax + esi]
add edx, 0x5cf90420
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x20
jmp 0x406639
je 0x4066a1
lea ebx, [ecx + 3]
cmp ebp, ebx
jne 0x4066d9
lea edi, [eax - 0x6d6505f4]
lea edx, [eax + esi]
add edx, 0x929afa0c
and edi, esi
add edi, edi
sub edx, edi
add dl, 0xac
lea edi, [eax + 0x5159e39c]
lea ebx, [eax + esi]
add ebx, 0x5159e39c
and edi, esi
add edi, edi
sub ebx, edi
add bl, dl
add bl, 0xbc
mov byte [esp + eax + 0x5e8], bl
add ebp, ecx
movzx edx, dl
not edx
jmp 0x4066a6
cmp ebx, 6
jne 0x4066aa
mov edx, ebp
lea ebp, [eax - 0x35a1f5ec]
lea ebx, [esi + eax]
add ebx, 0xca5e0a14
and ebp, esi
add ebp, ebp
sub ebx, ebp
mov ebp, edx
add bl, 0x74
mov byte [esp + eax + 0x5e8], bl
movzx ebx, bl
not ecx
add ecx, eax
sub ecx, ebx
mov eax, ecx
mov ecx, edi
lea edi, [eax - 0x791fe2b0]
lea ebx, [eax + esi]
add ebx, 0x86e01d50
and edi, esi
add edi, edi
sub ebx, edi
add bl, 0xd0
mov byte [esp + eax + 0x5e8], bl
sub eax, ebp
inc ebp
mov bl, byte [esp + eax + 0x5e6]
add eax, 0xfffffffe
movzx edx, bl
add edx, ecx
add eax, edx
jmp 0x406711
cmp ebp, edi
je 0x4066ef
lea ebx, [ecx + 2]
cmp ebp, ebx
je 0x4066e0
lea ebx, [ecx + 3]
cmp ebp, ebx
jne 0x406738
lea edi, [eax - 0x3ee883e4]
lea edx, [eax + esi]
add edx, 0xc1177c1c
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x3c
jmp 0x406639
lea ebx, [ecx + 4]
cmp ebp, ebx
jne 0x4066e4
mov edi, ecx
jmp 0x40670e
lea ebx, [ecx + 8]
cmp ebp, ebx
jne 0x406594
lea ebx, [eax - 0x27aa42dc]
lea ecx, [eax + esi]
add ecx, 0xd855bd24
and ebx, esi
add ebx, ebx
sub ecx, ebx
add cl, 4
mov byte [esp + eax + 0x5e8], cl
dec eax
mov ecx, edi
inc eax
cmp eax, 0x44
jb 0x40657b
jmp 0x40679c
lea ebx, [ecx + 0xa]
cmp ebp, ebx
je 0x406645
lea edi, [ecx + 0x28]
cmp ebp, edi
je 0x406675
jmp 0x40656b
lea ebx, [ecx + 6]
cmp ebp, ebx
je 0x406645
lea ebx, [ecx + 0xa]
mov edx, ebp
cmp ebp, ebx
jbe 0x406766
lea ebp, [eax + 0x61aa2938]
lea ebx, [eax + esi]
add ebx, 0x61aa2938
and ebp, esi
add ebp, ebp
sub ebx, ebp
add bl, 0x78
jmp 0x40677e
lea ebp, [eax - 0x437decc4]
lea ebx, [eax + esi]
add ebx, 0xbc82133c
and ebp, esi
add ebp, ebp
sub ebx, ebp
add bl, 0x5c
cmp ecx, 9
mov ebp, edx
ja 0x4066ef
mov byte [esp + eax + 0x5e8], bl
jmp 0x406711
mov eax, 0x166ff8c
jmp 0x4067a5
xor eax, eax
jmp 0x4067a5
mov eax, 0x164ec50
lea esi, [esp + eax]
add esi, 0x5e8
xor edi, edi
mov dword [0x4782e8], edi
mov dword [0x4782f8], edi
mov dword [0x4782fc], 0xf
mov byte [0x4782e8], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4782e8
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473170]
movups xmmword [esp + 0x4b0], xmm0
movaps xmm0, xmmword [0x473180]
movups xmmword [esp + 0x4c0], xmm0
mov dword [esp + 0x4d4], edi
mov dword [esp + 0x4d0], edi
mov word [esp + 0x4d8], 0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ebp, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x406da7
movzx edx, byte [esp + eax + 0x4b0]
lea edi, [ebp + 1]
cmp esi, edi
jae 0x4068b3
lea ecx, [eax + 0x7e4436bd]
lea ebx, [eax + edx]
add ebx, 0x7e4436bd
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd5
cmp ebp, eax
ja 0x406db2
lea ecx, [ebp + 2]
cmp esi, ecx
jae 0x4068fd
mov dword [esp], edi
lea edi, [eax + 0x5b987d81]
lea ebx, [eax + edx]
add ebx, 0x5b987d81
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x79
lea edi, [esi + ebp]
cmp edi, eax
jbe 0x40694d
lea ecx, [ebp + 6]
cmp esi, ecx
jne 0x4069e1
lea ecx, [eax + 0x414f8536]
lea ebx, [eax + edx]
add ebx, 0x414f8536
and ecx, edx
mov byte [esp + 4], 0x86
jmp 0x40691e
jne 0x4068d2
lea ecx, [eax + 0x7acca437]
lea ebx, [eax + edx]
add ebx, 0x7acca437
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x7f
jmp 0x406c33
lea ecx, [ebp + 2]
cmp esi, ecx
jne 0x40699c
mov dword [esp], edi
lea ecx, [eax + 0x73dd7f2b]
lea ebx, [eax + edx]
add ebx, 0x73dd7f2b
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd3
jmp 0x406bd9
cmp esi, edi
jne 0x4069bf
mov dword [esp], edi
lea ecx, [eax + 0x5820eafb]
lea ebx, [eax + edx]
add ebx, 0x5820eafb
and ecx, edx
mov byte [esp + 4], 0x23
add ecx, ecx
sub ebx, ecx
add bl, byte [esp + 4]
lea edi, [eax - 0x328df9f5]
lea ecx, [edx + eax]
add ecx, 0xcd72060b
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0xb3
mov byte [esp + eax + 0x4b0], cl
mov edi, dword [esp]
jmp 0x406a4f
mov dword [esp + 4], ecx
lea ecx, [ebp + 8]
cmp esi, ecx
jae 0x406a04
lea ecx, [eax + 0x7e4436bd]
lea ebx, [eax + edx]
add ebx, 0x7e4436bd
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd5
cmp edi, 0x10
jne 0x406a7d
lea ecx, [eax + 0x483eaa42]
lea ebx, [eax + edx]
add ebx, 0x483eaa42
and ecx, edx
add ecx, ecx
sub ebx, ecx
sub bl, dl
add bl, 0x32
jmp 0x406bd9
lea ecx, [ebp + 5]
cmp esi, ecx
jne 0x406a2a
lea edi, [eax + 0x6976c799]
lea ebx, [eax + edx]
add ebx, 0x6976c799
and edi, edx
mov cl, 0xd1
jmp 0x406ca9
cmp esi, ecx
jne 0x406a57
lea ecx, [eax + 0x5131c5ef]
lea ebx, [eax + edx]
add ebx, 0x5131c5ef
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x77
jmp 0x406a4d
lea ecx, [ebp + 5]
cmp esi, ecx
jne 0x406ad1
lea edi, [eax + 0x36e8cda4]
lea ebx, [eax + edx]
add ebx, 0x36e8cda4
and edi, edx
mov cl, 0x84
jmp 0x406ca9
cmp esi, dword [esp]
jne 0x406af9
lea ecx, [eax - 0x48cf04fe]
lea ebx, [eax + edx]
add ebx, 0xb730fb02
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf2
jmp 0x406c33
lea ecx, [ebp + 4]
cmp esi, ecx
jne 0x406b1d
lea ecx, [eax + 0x65ff3513]
lea ebx, [eax + edx]
add ebx, 0x65ff3513
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x7b
mov edi, ebp
dec eax
mov ebp, edi
jmp 0x406cd9
mov dword [esp], edi
lea edi, [ebp + 3]
cmp esi, edi
jne 0x406885
lea edi, [eax + 0x4dba3369]
lea ebx, [eax + edx]
add ebx, 0x4dba3369
and edi, edx
mov cl, 0x21
jmp 0x406ca9
lea ecx, [ebp + 0x28]
cmp esi, ecx
jbe 0x406b46
lea ecx, [eax + 0x16410b09]
lea ebx, [eax + edx]
add ebx, 0x16410b09
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc1
mov edi, 0x29
mov esi, dword [esp]
cmp edi, esi
mov ecx, dword [esp + 4]
jne 0x406bb7
lea ecx, [eax + 0x6e61f604]
lea ebx, [eax + edx]
add ebx, 0x6e61f604
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe4
jmp 0x406c33
lea ecx, [ebp + 4]
cmp esi, ecx
jne 0x406b6c
lea ecx, [eax + 0x2c821612]
lea ebx, [eax + edx]
add ebx, 0x2c821612
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x82
jmp 0x406bd9
cmp esi, dword [esp + 4]
jne 0x406b94
lea ecx, [eax - 0x4c469784]
lea ebx, [eax + edx]
add ebx, 0xb3b9687c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x9c
jmp 0x406b8f
lea ecx, [ebp + 8]
cmp esi, ecx
jne 0x406857
mov dword [esp], edi
lea ecx, [eax + 0x5f101007]
lea ebx, [eax + edx]
add ebx, 0x5f101007
and ecx, edx
mov byte [esp + 4], 0xcf
jmp 0x40691e
mov edi, dword [esp]
cmp esi, edi
jne 0x406c3c
lea ecx, [eax + 0x12c97883]
lea ebx, [eax + edx]
add ebx, 0x12c97883
and ecx, edx
mov byte [esp + 4], 0x6b
jmp 0x40691e
lea ecx, [ebp + 0x28]
cmp esi, ecx
jne 0x406d8c
lea ecx, [eax + 0x290a838c]
lea ebx, [eax + edx]
add ebx, 0x290a838c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x2c
mov dword [esp], ebp
jmp 0x406c03
lea ecx, [ebp + 4]
cmp esi, ecx
jne 0x406c63
lea edi, [eax - 0x5a24e19c]
lea ebx, [eax + edx]
add ebx, 0xa5db1e64
and edi, edx
mov cl, 0x44
jmp 0x406ca9
cmp edi, ecx
jne 0x406c8b
mov esi, ecx
lea ecx, [eax + 0x6772d0f8]
lea ebx, [eax + edx]
add ebx, 0x6772d0f8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x38
lea edi, [eax - 0x397d1f01]
lea ecx, [edx + eax]
add ecx, 0xc682e0ff
and edi, edx
add edi, edi
sub ecx, edi
add cl, 7
mov byte [esp + eax + 0x4b0], cl
movzx ecx, cl
not ebp
add ebp, eax
sub ebp, ecx
mov eax, ebp
lea edi, [eax + 0x44c717bc]
lea ecx, [eax + edx]
add ecx, 0x44c717bc
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0xdc
mov byte [esp + eax + 0x4b0], cl
sub eax, esi
inc esi
movzx edx, byte [esp + eax + 0x4ae]
add eax, 0xfffffffe
mov ebp, dword [esp]
add edx, ebp
add eax, edx
jmp 0x406cd9
cmp esi, dword [esp + 4]
jne 0x406ce8
lea ecx, [eax + 0xf51e5fd]
lea ebx, [eax + edx]
add ebx, 0xf51e5fd
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x15
jmp 0x406a4f
lea ecx, [ebp + 5]
cmp esi, ecx
jne 0x406d0c
lea ecx, [eax - 0x5d9c7422]
lea ebx, [eax + edx]
add ebx, 0xa2638bde
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xee
jmp 0x406a4d
lea esi, [ebp + 3]
cmp edi, esi
jne 0x406d32
lea edi, [eax + 0x5d0c1966]
lea ebx, [eax + edx]
add ebx, 0x5d0c1966
and edi, edx
mov cl, 0x36
add edi, edi
sub ebx, edi
add bl, cl
lea edi, [eax - 0x36058c7b]
lea ecx, [edx + eax]
add ecx, 0xc9fa7385
and edi, edx
add edi, edi
sub ecx, edi
add cl, bl
add cl, 0x5d
mov byte [esp + eax + 0x4b0], cl
add esi, ebp
movzx ecx, bl
not ecx
add eax, ecx
inc eax
cmp eax, 0x2a
jb 0x406828
jmp 0x406dae
lea ecx, [ebp + 3]
cmp esi, ecx
jne 0x406d3d
lea ecx, [eax + 0xbda5377]
lea ebx, [eax + edx]
add ebx, 0xbda5377
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xbf
jmp 0x406a4d
lea ecx, [ebp + 3]
cmp esi, ecx
jne 0x406974
lea ecx, [eax - 0x648b992e]
lea ebx, [eax + edx]
add ebx, 0x9b7466d2
and ecx, edx
mov byte [esp + 4], 0x42
jmp 0x40691e
mov byte [esp + eax + 0x4b0], bl
mov esi, edi
jmp 0x406cd9
lea ecx, [ebp + 5]
cmp esi, ecx
jne 0x406d61
lea ecx, [eax + 0x1739be5]
lea ebx, [eax + edx]
add ebx, 0x1739be5
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xbd
jmp 0x406cd2
lea ecx, [ebp + 7]
cmp esi, ecx
jne 0x406d85
lea ecx, [eax - 0x203f6a1]
lea ebx, [eax + edx]
add ebx, 0xfdfc095f
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x67
jmp 0x406bd9
mov edi, esi
jmp 0x406aa5
lea ebx, [eax + edx]
add ebx, 0x9ce802b7
add eax, 0x9ce802b7
and eax, edx
add eax, eax
sub ebx, eax
dec bl
jmp 0x406818
mov eax, 0x98fdb9
jmp 0x406db7
xor eax, eax
jmp 0x406db7
mov eax, 0x154c6fc
lea esi, [esp + eax]
add esi, 0x4b0
xor edi, edi
mov dword [0x478300], edi
mov dword [0x478310], edi
mov dword [0x478314], 0xf
mov byte [0x478300], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478300
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [str.C_90__2X___5C]
movups xmmword [esp + 0x168], xmm0
mov dword [esp + 0x178], 0x577a2331
mov dword [esp + 0x17c], 0xc3c72539
mov byte [esp + 0x180], 0x64
mov dword [esp + 0x185], edi
mov dword [esp + 0x181], edi
mov dword [esp + 0x189], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov eax, dword [eax]
xor ecx, ecx
cmp esi, ecx
ja 0x407061
mov bl, byte [esp + ecx + 0x168]
movzx edx, bl
lea edi, [eax + 1]
cmp esi, edi
jae 0x406ec5
cmp eax, ecx
ja 0x40706c
lea ebp, [esi + eax]
cmp ebp, ecx
jbe 0x406ece
lea edi, [eax + 3]
cmp esi, edi
je 0x406ee6
lea edi, [eax + 9]
cmp esi, edi
jne 0x406e36
lea esi, [ecx - 0xa4eb9f8]
lea ebx, [ecx + edx]
add ebx, 0xf5b14608
and esi, edx
mov byte [esp], 0xc8
add esi, esi
sub ebx, esi
add bl, byte [esp]
mov dword [esp], ebx
lea esi, [ecx - 0x283a0506]
lea ebx, [edx + ecx]
add ebx, 0xd7c5fafa
and esi, edx
add esi, esi
sub ebx, esi
add bl, byte [esp]
add bl, 0x2a
mov byte [esp + ecx + 0x168], bl
mov ebx, dword [esp]
jmp 0x406f7b
jne 0x406eed
mov edi, eax
jmp 0x406f4f
cmp ebp, 1
je 0x406ef4
cmp esi, edi
je 0x406f91
lea ebx, [eax + 2]
cmp esi, ebx
jne 0x406fc0
mov edi, eax
jmp 0x406fae
lea ebx, [eax + 2]
cmp esi, ebx
jne 0x406f58
lea ebp, [ecx - 0x3a0f3d32]
lea ebx, [edx + ecx]
add ebx, 0xc5f0c2ce
and ebp, edx
add ebp, ebp
sub ebx, ebp
add bl, 0x5e
mov byte [esp + ecx + 0x168], bl
movzx ebx, bl
not eax
add eax, ecx
mov ecx, eax
sub ecx, ebx
lea ebp, [ecx + 0x3d0626b8]
and ebp, edx
add edx, ecx
add edx, 0x3d0626b8
add ebp, ebp
sub edx, ebp
add dl, 0xf8
mov byte [esp + ecx + 0x168], dl
add ebx, esi
inc esi
sub eax, ebx
mov bl, byte [esp + eax + 0x166]
add eax, 0xfffffffe
mov ecx, eax
mov eax, edi
movzx edx, bl
add edx, edi
add ecx, edx
jmp 0x406fb1
lea ebx, [eax + 3]
cmp esi, ebx
jne 0x406f86
lea edi, [ecx + 0x1deb4b0e]
lea ebx, [ecx + edx]
add ebx, 0x1deb4b0e
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x9e
add esi, eax
mov ebp, esi
movzx edx, bl
not edx
add ecx, edx
mov esi, ebp
jmp 0x406fb1
lea ebx, [eax + 9]
cmp esi, ebx
jne 0x406e5f
lea ebx, [ecx - 0x1664ccda]
lea eax, [edx + ecx]
add eax, 0xe99b3326
and ebx, edx
add ebx, ebx
sub eax, ebx
add al, 0xf6
mov byte [esp + ecx + 0x168], al
dec ecx
mov eax, edi
inc ecx
cmp ecx, 0x25
jb 0x406e46
jmp 0x407068
mov dword [esp], ebx
lea ebx, [eax + 3]
cmp esi, ebx
jne 0x406fe4
lea esi, [ecx + 0x18c3ee12]
lea ebx, [ecx + edx]
add ebx, 0x18c3ee12
and esi, edx
mov byte [esp], 0x82
jmp 0x406e91
lea ebx, [eax + 5]
cmp esi, ebx
jne 0x407008
lea edi, [ecx - 0xae68246]
lea ebx, [ecx + edx]
add ebx, 0xf5197dba
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xea
jmp 0x406f79
lea ebx, [eax + 7]
cmp esi, ebx
je 0x406ef4
cmp esi, dword [esp]
jbe 0x407032
lea edi, [ecx + 0x24da00f4]
lea ebx, [ecx + edx]
add ebx, 0x24da00f4
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x54
jmp 0x407055
lea edi, [eax + 6]
cmp esi, edi
je 0x406ee6
lea edi, [ecx + 0x771563ea]
lea ebx, [ecx + edx]
add ebx, 0x771563ea
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x9a
mov byte [esp + ecx + 0x168], bl
jmp 0x406fb1
mov eax, 0x748522
jmp 0x407071
xor eax, eax
jmp 0x407071
mov eax, 0x15f2138
lea esi, [esp + eax]
add esi, 0x168
xor edi, edi
mov dword [0x478318], edi
mov dword [0x478328], edi
mov dword [0x47832c], 0xf
mov byte [0x478318], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478318
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4731a0]
movups xmmword [esp + 0xa8], xmm0
mov word [esp + 0xb8], 0x358a
mov dword [esp + 0xbe], edi
mov dword [esp + 0xba], edi
mov dword [esp + 0xc5], edi
mov dword [esp + 0xc1], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x407417
mov dl, byte [esp + eax + 0xa8]
movzx edi, dl
lea ebx, [ecx + 1]
cmp esi, ebx
jae 0x40714c
cmp ecx, eax
ja 0x407422
lea ebp, [ecx + 6]
cmp esi, ebp
jae 0x40717c
mov dword [esp], edi
lea edi, [esi + ecx]
cmp edi, eax
jbe 0x4071b5
lea edx, [ecx + 3]
cmp esi, edx
mov edi, dword [esp]
je 0x4071bc
lea edx, [ecx + 0x20]
cmp esi, edx
jne 0x40721b
mov esi, 0x20
jmp 0x407213
jne 0x407158
movzx edx, dl
add edx, ecx
jmp 0x4072f3
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x4071dd
lea ebx, [eax + 0x59ac755d]
lea edx, [eax + edi]
add edx, 0x59ac755d
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x75
jmp 0x4072ee
cmp esi, ebx
je 0x4071bc
mov dword [esp], edi
lea edi, [ecx + 2]
cmp esi, edi
je 0x407208
lea edi, [ecx + 3]
cmp esi, edi
jne 0x40729e
lea edi, [eax + 0x34e03eeb]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x34e03eeb
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0x93
jmp 0x4072ec
cmp esi, ebx
mov edi, dword [esp]
jne 0x407201
lea edx, [eax + 0x243e9d3]
lea ecx, [eax + edi]
add ecx, 0x243e9d3
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x3b
mov byte [esp + eax + 0xa8], cl
jmp 0x407213
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x40720c
lea ebx, [eax + 0x6d99e4c7]
lea edx, [eax + edi]
add edx, 0x6d99e4c7
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0x8f
jmp 0x4072ec
lea edi, [ecx + 3]
cmp esi, edi
jne 0x407266
mov ebx, ecx
jmp 0x407213
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x40728e
dec eax
mov ecx, ebx
jmp 0x4072f5
lea edx, [ecx + 2]
cmp esi, edx
jne 0x4072c6
mov ebp, edi
lea edi, [eax - 0x7c34c1fc]
lea edx, [eax + ebp]
add edx, 0x83cb3e04
and edi, ebp
add edi, edi
sub edx, edi
add dl, 0xe4
lea edi, [eax + 0x1631593d]
lea ebx, [eax + ebp]
add ebx, 0x1631593d
and edi, ebp
add edi, edi
sub ebx, edi
add bl, dl
add bl, 0x55
mov byte [esp + eax + 0xa8], bl
jmp 0x4072ec
lea edi, [ecx + 2]
cmp esi, edi
jne 0x407304
lea edi, [eax - 0x3c930ccd]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0xc36cf333
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0x9b
jmp 0x4072ec
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x40710c
jmp 0x4071bc
lea edi, [ecx + 4]
cmp esi, edi
jne 0x407347
lea edi, [eax + 0x48cdae55]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x48cdae55
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0xad
jmp 0x4072ee
lea edx, [ecx + 0x10]
cmp esi, edx
jne 0x40735a
lea edi, [eax - 0x68475292]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x97b8ad6e
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0xfe
add esi, ecx
movzx edx, dl
not edx
add eax, edx
inc eax
cmp eax, 0x21
jb 0x4070f3
jmp 0x40741e
cmp esi, ebp
je 0x40735e
lea edi, [ecx + 7]
cmp esi, edi
je 0x40714e
cmp esi, 8
ja 0x4073ce
lea edx, [ecx + 5]
cmp esi, edx
jne 0x4073f0
lea edi, [eax - 0x57688b8a]
mov ebp, dword [esp]
lea edx, [eax + ebp]
add edx, 0xa8977476
and edi, ebp
add edi, edi
sub edx, edi
add dl, 0xc6
jmp 0x407240
lea edi, [ecx + 9]
cmp esi, edi
mov edi, dword [esp]
jne 0x40711b
jmp 0x40714e
cmp esi, ebx
jne 0x40738f
lea edi, [eax + 0x2a1ec8a7]
mov ebp, dword [esp]
lea edx, [eax + ebp]
add edx, 0x2a1ec8a7
and edi, ebp
add edi, edi
sub edx, edi
add dl, 0x6f
mov byte [esp + eax + 0xa8], dl
movzx edx, dl
not ecx
add ecx, eax
sub ecx, edx
mov eax, ecx
mov ecx, ebx
jmp 0x40739d
lea edx, [ecx + 0xa]
cmp esi, edx
mov ebp, dword [esp]
jne 0x4070e3
lea edi, [eax + 0x3415805c]
lea edx, [eax + ebp]
add edx, 0x3415805c
and edi, ebp
add edi, edi
sub edx, edi
add dl, 0x7c
mov byte [esp + eax + 0xa8], dl
sub eax, esi
inc esi
mov dl, byte [esp + eax + 0xa6]
add eax, 0xfffffffe
jmp 0x40714e
lea edi, [eax + 0xc3aa188]
mov ebp, dword [esp]
lea ebx, [eax + ebp]
add ebx, 0xc3aa188
and edi, ebp
add edi, edi
sub ebx, edi
add dl, bl
add dl, 0x48
jmp 0x407240
lea edi, [eax + 0x9f6b7b5]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x9f6b7b5
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0xd
mov byte [esp + eax + 0xa8], dl
jmp 0x4072f5
mov eax, 0x7a2551
jmp 0x407427
xor eax, eax
jmp 0x407427
mov eax, 0x1436d9c
lea esi, [esp + eax]
add esi, 0xa8
xor eax, eax
mov dword [0x478330], eax
mov dword [0x478340], eax
mov dword [0x478344], 0xf
mov byte [0x478330], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478330
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4731b0]
movups xmmword [esp + 0x430], xmm0
movaps xmm0, xmmword [0x4731c0]
movups xmmword [esp + 0x440], xmm0
mov dword [esp + 0xc], eax
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor ebx, ebx
mov eax, dword [esp + 0xc]
mov edx, 0xb98a60
cmp edi, ebx
ja 0x407d05
mov dword [esp + 0xc], eax
movzx esi, byte [esp + ebx + 0x430]
lea eax, [ebx - 0x3a0be020]
mov ebp, ebx
add ebx, esi
add ebx, 0xc5f41fe0
and eax, esi
add eax, eax
sub ebx, eax
add bl, 0xe0
lea edx, [ebp + 0x3d069d60]
lea eax, [esi + ebp]
add eax, 0x3d069d60
and edx, esi
add edx, edx
sub eax, edx
add al, 0x60
mov dword [esp + 8], eax
lea edx, [ebp + 0x63bccf20]
lea eax, [esi + ebp]
add eax, 0x63bccf20
mov dword [esp + 4], esi
and edx, esi
add edx, edx
sub eax, edx
add al, 0x20
mov dword [esp + 0x14], eax
mov dword [esp], ebp
lea esi, [ecx + 1]
mov eax, ebx
cmp edi, esi
mov ebp, ebx
jb 0x407540
je 0x40796f
lea edx, [ecx + 2]
cmp edi, edx
mov ebx, dword [esp]
je 0x407994
lea edx, [ecx + 3]
cmp edi, edx
je 0x4079b5
lea edx, [ecx + 7]
mov ebx, dword [esp + 0xc]
mov eax, ebx
cmp edi, edx
je 0x4079fb
cmp ecx, dword [esp]
ja 0x407cfc
mov dword [esp + 0x10], ebp
lea ebp, [ecx + 6]
mov edx, dword [esp + 8]
cmp edi, ebp
jb 0x407583
cmp edi, esi
je 0x4079d7
lea edx, [ecx + 3]
cmp edi, edx
je 0x407a1f
lea edx, [ecx + 2]
cmp edi, edx
je 0x407a44
lea esi, [ecx + 5]
mov edx, eax
cmp edi, esi
je 0x407a68
lea esi, [edi + ecx]
mov ebx, dword [esp]
cmp esi, ebx
jbe 0x407b46
lea edx, [ecx + 1]
cmp edi, edx
je 0x40768d
lea edx, [ecx + 0x7a]
cmp edi, edx
je 0x4076cf
lea edx, [ecx + 0x3e8]
cmp edi, edx
je 0x4076ef
lea edx, [ecx + 0x42]
cmp edi, edx
je 0x407712
lea edx, [ecx + 0x10]
cmp edi, edx
je 0x407737
lea edi, [ecx + 6]
lea edx, [ecx + 0x12]
cmp edi, edx
jb 0x407cd7
lea edx, [ecx + 0xe]
cmp edi, edx
jb 0x407671
lea edx, [ecx + 0x4d]
cmp edi, edx
jb 0x40765b
lea edx, [ecx + 0x40c]
cmp edi, edx
jb 0x407759
lea esi, [ecx + 0x70]
cmp edi, esi
jb 0x4077c1
lea ebp, [ecx + 0x90]
lea edx, [ecx + 0xb0]
cmp esi, edx
ja 0x4077f0
lea edx, [ecx + 0x98]
cmp esi, edx
ja 0x407814
lea edx, [ecx + 0x93]
cmp esi, edx
ja 0x4078a3
lea edx, [ecx + 0xea]
cmp esi, edx
ja 0x4078c4
lea edi, [ecx + 0x1090]
add ecx, 0x2090
cmp esi, edi
cmova edi, esi
cmova ecx, ebp
jmp 0x407591
lea edx, [ecx + edi]
add edx, 0xc
add ecx, 0xc
cmp edx, ebx
ja 0x407591
jmp 0x407b2a
add ecx, 0xc
mov eax, dword [esp + 0x14]
mov dword [esp + 0xc], eax
cmp edi, ebx
mov ebx, dword [esp + 0x10]
jbe 0x407505
jmp 0x40cbdf
lea eax, [ebx + 0xee5b240]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0xee5b240
and eax, esi
add eax, eax
sub edx, eax
add dl, 0x40
mov ebp, edx
lea edx, [ebx - 0x5ac72ce0]
lea eax, [ebx + esi]
add eax, 0xa538d320
and edx, esi
add edx, edx
sub eax, edx
add al, 0x20
mov byte [esp + ebx + 0x430], al
mov eax, ebp
jmp 0x4078e5
lea eax, [ebx - 0x65320e00]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0x9acdf200
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
jmp 0x4078e5
lea eax, [ebx - 0x4d618e80]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0xb29e7180
and eax, esi
add eax, eax
sub edx, eax
xor dl, 0x80
mov ebp, edx
jmp 0x407907
lea eax, [ebx + 0x565730c0]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0x565730c0
and eax, esi
add eax, eax
sub edx, eax
add dl, 0xc0
mov dword [esp + 0xc], edx
jmp 0x407838
lea eax, [ebx + 0x6e27b040]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0x6e27b040
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0x40
jmp 0x40789a
add ecx, 0xc
lea eax, [ebx - 0x6ca231e0]
mov edx, dword [esp + 4]
mov esi, ebx
add ebx, edx
add ebx, 0x935dce20
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x20
mov dword [esp + 0x10], ebx
cmp edi, 0x29
ja 0x4078e9
lea eax, [ecx + 0x2a]
cmp edi, eax
mov ebx, esi
jbe 0x407946
lea eax, [ebx + 0x683235c0]
mov esi, ebx
add ebx, edx
add ebx, 0x683235c0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xc0
mov dword [esp + 0x10], ebx
cmp ecx, 9
ja 0x407a8d
mov edx, dword [esp + 0x10]
mov ebx, esi
jmp 0x4077e2
add ecx, 0xc
lea eax, [ebx - 0x54d1b260]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0xab2e4da0
and eax, edx
mov edx, esi
add eax, eax
sub edx, eax
add dl, 0xa0
mov byte [esp + ebx + 0x430], dl
mov eax, edx
jmp 0x407937
lea eax, [ebx - 0x770d1300]
mov edx, dword [esp + 4]
lea ecx, [ebx + edx]
add ecx, 0x88f2ed00
and eax, edx
add eax, eax
sub ecx, eax
mov eax, ecx
mov edi, esi
mov ecx, ebp
jmp 0x40789a
lea eax, [ebx - 0x5f3c9380]
mov edx, dword [esp + 4]
lea ecx, [ebx + edx]
add ecx, 0xa0c36c80
and eax, edx
add eax, eax
sub ecx, eax
xor cl, 0x80
mov dword [esp + 0xc], ecx
mov edi, esi
mov ecx, ebp
lea edx, [ebx - 0x42f6ad60]
mov esi, dword [esp + 4]
lea eax, [ebx + esi]
add eax, 0xbd0952a0
and edx, esi
add edx, edx
sub eax, edx
add al, 0xa0
mov byte [esp + ebx + 0x430], al
lea edx, [ecx + 1]
movzx eax, al
not ecx
sub ebx, eax
add ebx, ecx
mov ecx, edx
lea edx, [ebx - 0x7d028d80]
mov esi, dword [esp + 4]
lea eax, [ebx + esi]
add eax, 0x82fd7280
and edx, esi
add edx, edx
sub eax, edx
xor al, 0x80
mov byte [esp + ebx + 0x430], al
sub ebx, edi
inc edi
movzx edx, byte [esp + ebx + 0x42e]
add ebx, 0xfffffffe
mov eax, dword [esp + 0xc]
add edx, ecx
add ebx, edx
jmp 0x407937
lea eax, [ebx - 0x476c1400]
mov ecx, dword [esp + 4]
lea edx, [ebx + ecx]
add edx, 0xb893ec00
and eax, ecx
add eax, eax
sub edx, eax
mov eax, edx
mov edi, esi
mov ecx, ebp
jmp 0x40792a
lea eax, [ebx + 0x5c4cab40]
mov ecx, dword [esp + 4]
lea edx, [ebx + ecx]
add edx, 0x5c4cab40
and eax, ecx
add eax, eax
sub edx, eax
mov eax, edx
add al, 0x40
mov edi, esi
mov ecx, ebp
inc ecx
dec ebx
jmp 0x407937
mov ebx, esi
lea eax, [esi + 0x6b2cf300]
add esi, edx
add esi, 0x6b2cf300
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, dl
mov ebp, eax
mov esi, edx
lea edx, [ebx + 0x312112e0]
lea eax, [ebx + esi]
add eax, 0x312112e0
and edx, esi
add edx, edx
sub eax, edx
mov edx, ebp
add al, dl
add al, 0xe0
mov byte [esp + ebx + 0x430], al
mov eax, ebp
add edi, ecx
mov edx, eax
movzx eax, dl
not eax
add ebx, eax
mov eax, edx
inc ebx
cmp ebx, 0x20
jb 0x407498
jmp 0x407d03
lea eax, [ecx + 1]
cmp edi, eax
jne 0x407ab0
lea eax, [ebx - 0xbe58a80]
lea esi, [ebx + edx]
add esi, 0xf41a7580
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
xor al, 0x80
jmp 0x40789a
mov ebx, dword [esp]
lea eax, [ebx + 0x51dc5fa0]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0x51dc5fa0
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0xa0
jmp 0x40789a
lea eax, [ebx + 0x69acdf20]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0x69acdf20
and eax, esi
add eax, eax
sub edx, eax
add dl, 0x20
jmp 0x40772e
lea eax, [ebx - 0x66b221e0]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0x994dde20
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0x20
jmp 0x4078e6
mov ebx, dword [esp]
lea eax, [ebx - 0x371122e0]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0xc8eedd20
and eax, esi
add eax, eax
sub edx, eax
add dl, 0x20
jmp 0x4076a9
mov ebx, dword [esp]
lea eax, [ebx - 0x4ee1a260]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0xb11e5da0
and eax, esi
add eax, eax
sub edx, eax
add dl, 0xa0
jmp 0x4076a9
mov ebx, dword [esp]
lea eax, [ebx - 0x1f40a360]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0xe0bf5ca0
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0xa0
jmp 0x4078e6
mov ebx, dword [esp]
lea eax, [ebx + 0x6ca79c60]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0x6ca79c60
and eax, esi
add eax, eax
sub edx, eax
add dl, 0x60
jmp 0x40770b
mov ebx, dword [esp]
lea eax, [ebx - 0x7b87e420]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0x84781be0
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0xe0
jmp 0x40792c
mov ebx, esi
add esi, 0xdf44b340
lea eax, [ebx + edx]
add eax, 0xdf44b340
and esi, edx
add esi, esi
sub eax, esi
add al, al
xor al, 0x80
mov ebp, eax
mov esi, edx
jmp 0x4076ab
lea eax, [ecx + 2]
cmp edi, eax
jne 0x407ad9
lea eax, [ebx - 0x7ffd4ac0]
lea esi, [ebx + edx]
add esi, 0x8002b540
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0x40
mov dword [esp + 0xc], eax
jmp 0x407867
lea eax, [ecx + 3]
cmp edi, eax
jne 0x407afe
lea eax, [ebx + 0x23bb7480]
lea esi, [ebx + edx]
add esi, 0x23bb7480
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
xor al, 0x80
jmp 0x40792a
mov esi, ebx
lea eax, [ecx + 5]
cmp edi, eax
jne 0x4077b0
mov ebx, esi
lea eax, [esi - 0x505c4bc0]
add esi, edx
add esi, 0xafa3b440
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0x40
jmp 0x407903
lea eax, [ebx + 0x7b8d4ea0]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0x7b8d4ea0
and eax, esi
add eax, eax
sub edx, eax
add dl, 0xa0
lea eax, [ecx + 0x20]
cmp edi, eax
jae 0x407b79
lea eax, [ecx + edi]
cmp eax, 0x1000
jne 0x407ba2
lea eax, [ebx - 0x8eacd40]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0xf71532c0
and eax, esi
add eax, eax
sub edx, eax
mov eax, esi
sub dl, al
jmp 0x40772b
lea eax, [ecx + 1]
cmp edi, eax
jne 0x407bce
lea eax, [ebx + 0x7a0d3ac0]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0x7a0d3ac0
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0xc0
jmp 0x40789a
lea eax, [ecx + 0x1000]
cmp edi, eax
mov edx, dword [esp + 4]
jbe 0x407bf6
lea eax, [ebx + 0x2b2b9860]
mov esi, ebx
add ebx, edx
add ebx, 0x2b2b9860
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x60
jmp 0x407779
lea eax, [ecx + 3]
cmp edi, eax
jne 0x407c1b
lea eax, [ebx - 0x6e2245c0]
mov esi, dword [esp + 4]
lea edx, [ebx + esi]
add edx, 0x91ddba40
and eax, esi
add eax, eax
sub edx, eax
add dl, 0x40
jmp 0x40772e
lea eax, [ecx + 1]
cmp edi, eax
jne 0x407c44
lea eax, [ebx - 0x48ec27e0]
lea esi, [ebx + edx]
add esi, 0xb713d820
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0x20
jmp 0x407aa7
lea eax, [ecx + 4]
cmp edi, eax
jne 0x407c5f
lea eax, [ebx - 0x5651c640]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0xa9ae39c0
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0xc0
jmp 0x40792a
lea eax, [ecx + 3]
cmp edi, eax
jne 0x407c90
lea eax, [ebx - 0x311ba860]
lea esi, [ebx + edx]
add esi, 0xcee457a0
jmp 0x407a35
lea eax, [ecx + 7]
mov dword [esp + 0x10], edx
cmp edi, eax
jne 0x407b4d
lea eax, [ebx - 0x3e8146c0]
mov edx, dword [esp + 4]
lea esi, [ebx + edx]
add esi, 0xc17eb940
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0x40
jmp 0x4078e6
lea eax, [ecx + 4]
cmp edi, eax
jne 0x407cab
lea eax, [ebx + 0x729d16e0]
lea esi, [ebx + edx]
add esi, 0x729d16e0
jmp 0x407a7e
lea eax, [ecx + 5]
cmp edi, eax
jne 0x407cd0
lea eax, [ebx - 0x759269a0]
lea esi, [ebx + edx]
add esi, 0x8a6d9660
and eax, edx
add eax, eax
sub esi, eax
mov eax, esi
add al, 0x60
jmp 0x407ad0
mov esi, ebx
jmp 0x40777d
mov eax, dword [esp + 4]
lea ecx, [ebx + eax]
add ecx, 0x4bec4fa0
add ebx, 0x4bec4fa0
and ebx, eax
add ebx, ebx
sub ecx, ebx
add cl, 0xa0
mov dword [esp + 0xc], ecx
jmp 0x407484
mov edx, 0x1456a80
jmp 0x407d05
xor edx, edx
lea esi, [esp + edx]
add esi, 0x430
xor eax, eax
mov dword [0x478348], eax
mov dword [0x478358], eax
mov dword [0x47835c], 0xf
mov byte [0x478348], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478348
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4731d0]
movups xmmword [esp + 0x280], xmm0
mov word [esp + 0x290], 0xedf1
mov byte [esp + 0x292], 0x52
xorps xmm0, xmm0
movups xmmword [esp + 0x293], xmm0
mov word [esp + 0x2a3], 0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov eax, dword [eax]
xor ecx, ecx
cmp esi, ecx
ja 0x407fa1
mov bl, byte [esp + ecx + 0x280]
movzx edx, bl
lea edi, [eax + 1]
cmp esi, edi
jae 0x407e05
cmp eax, ecx
ja 0x407fac
lea ebp, [esi + eax]
cmp ebp, ecx
jbe 0x407e0e
lea edi, [eax + 3]
cmp esi, edi
je 0x407e26
lea edi, [eax + 9]
cmp esi, edi
jne 0x407d76
lea esi, [ecx - 0x1bcb31c0]
lea ebx, [ecx + edx]
add ebx, 0xe434ce40
and esi, edx
mov byte [esp], 0x40
add esi, esi
sub ebx, esi
add bl, byte [esp]
mov dword [esp], ebx
lea esi, [ecx - 0x380dfeb0]
lea ebx, [edx + ecx]
add ebx, 0xc7f20150
and esi, edx
add esi, esi
sub ebx, esi
add bl, byte [esp]
add bl, 0xd0
mov byte [esp + ecx + 0x280], bl
mov ebx, dword [esp]
jmp 0x407ebb
jne 0x407e2d
mov edi, eax
jmp 0x407e8f
cmp ebp, 1
je 0x407e34
cmp esi, edi
je 0x407ed1
lea ebx, [eax + 2]
cmp esi, ebx
jne 0x407f00
mov edi, eax
jmp 0x407eee
lea ebx, [eax + 2]
cmp esi, ebx
jne 0x407e98
lea ebp, [ecx - 0x4a306510]
lea ebx, [edx + ecx]
add ebx, 0xb5cf9af0
and ebp, edx
add ebp, ebp
sub ebx, ebp
add bl, 0x70
mov byte [esp + ecx + 0x280], bl
movzx ebx, bl
not eax
add eax, ecx
mov ecx, eax
sub ecx, ebx
lea ebp, [ecx + 0x2cbe67c0]
and ebp, edx
add edx, ecx
add edx, 0x2cbe67c0
add ebp, ebp
sub edx, ebp
add dl, 0xc0
mov byte [esp + ecx + 0x280], dl
add ebx, esi
inc esi
sub eax, ebx
mov bl, byte [esp + eax + 0x27e]
add eax, 0xfffffffe
mov ecx, eax
mov eax, edi
movzx edx, bl
add edx, edi
add ecx, edx
jmp 0x407ef1
lea ebx, [eax + 3]
cmp esi, ebx
jne 0x407ec6
lea edi, [ecx + 0x1c42ccf0]
lea ebx, [ecx + edx]
add ebx, 0x1c42ccf0
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x70
add esi, eax
mov ebp, esi
movzx edx, bl
not edx
add ecx, edx
mov esi, ebp
jmp 0x407ef1
lea ebx, [eax + 9]
cmp esi, ebx
jne 0x407d9f
lea ebx, [ecx - 0x25eb9850]
lea eax, [edx + ecx]
add eax, 0xda1467b0
and ebx, edx
add ebx, ebx
sub eax, ebx
add al, 0x30
mov byte [esp + ecx + 0x280], al
dec ecx
mov eax, edi
inc ecx
cmp ecx, 0x25
jb 0x407d86
jmp 0x407fa8
mov dword [esp], ebx
lea ebx, [eax + 3]
cmp esi, ebx
jne 0x407f24
lea esi, [ecx + 0xe5d3410]
lea ebx, [ecx + edx]
add ebx, 0xe5d3410
and esi, edx
mov byte [esp], 0x90
jmp 0x407dd1
lea ebx, [eax + 5]
cmp esi, ebx
jne 0x407f48
lea edi, [ecx - 0x15e798b0]
lea ebx, [ecx + edx]
add ebx, 0xea186750
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xd0
jmp 0x407eb9
lea ebx, [eax + 7]
cmp esi, ebx
je 0x407e34
cmp esi, dword [esp]
jbe 0x407f72
lea edi, [ecx + 0x187d9aa0]
lea ebx, [ecx + edx]
add ebx, 0x187d9aa0
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xa0
jmp 0x407f95
lea edi, [eax + 6]
cmp esi, edi
je 0x407e26
lea edi, [ecx + 0x76eeccd0]
lea ebx, [ecx + edx]
add ebx, 0x76eeccd0
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x50
mov byte [esp + ecx + 0x280], bl
jmp 0x407ef1
mov eax, 0xa06890
jmp 0x407fb1
xor eax, eax
jmp 0x407fb1
mov eax, 0x1719bc0
lea esi, [esp + eax]
add esi, 0x280
xor edi, edi
mov dword [0x478360], edi
mov dword [0x478370], edi
mov dword [0x478374], 0xf
mov byte [0x478360], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478360
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4731e0]
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0x70], 0xc7e2b3a5
mov dword [esp + 0x74], 0xaba7b1a5
mov byte [esp + 0x78], 0x18
mov dword [esp + 0x7d], edi
mov dword [esp + 0x79], edi
mov word [esp + 0x81], 0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edi, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x408510
movzx edx, byte [esp + eax + 0x60]
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x40809b
cmp edi, eax
ja 0x40851b
lea ecx, [eax - 0x6e922148]
lea ebx, [eax + edx]
add ebx, 0x916ddeb8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf8
mov dword [esp], ebp
lea ebp, [esi + edi]
cmp ebp, eax
jbe 0x408147
lea ecx, [edi + 9]
cmp esi, ecx
jne 0x4081e3
lea ecx, [eax + 0x312c6990]
lea ebx, [eax + edx]
add ebx, 0x312c6990
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x10
jmp 0x408208
jne 0x4080ba
lea ecx, [eax + 0x14c68d88]
lea ebx, [eax + edx]
add ebx, 0x14c68d88
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x48
jmp 0x408234
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x4081bc
mov dword [esp], ebp
mov dword [esp + 4], esi
lea ebp, [eax + 0x3079f4e8]
lea ebx, [eax + edx]
add ebx, 0x3079f4e8
and ebp, edx
mov byte [esp + 0xc], 0xa8
lea esi, [eax - 0x1b00f2b8]
lea ecx, [edx + eax]
add ecx, 0xe4ff0d48
and esi, edx
add esi, esi
sub ecx, esi
add cl, 8
mov byte [esp + eax + 0x60], cl
movzx ecx, cl
not edi
add edi, eax
mov eax, edi
sub eax, ecx
lea esi, [eax - 0x141418e0]
and esi, edx
add edx, eax
add edx, 0xebebe720
add esi, esi
sub edx, esi
add dl, 0x20
mov byte [esp + eax + 0x60], dl
add ebp, ebp
sub ebx, ebp
add bl, byte [esp + 0xc]
mov esi, dword [esp + 4]
add ecx, esi
inc esi
sub edi, ecx
movzx edx, byte [esp + edi + 0x5e]
add edi, 0xfffffffe
mov eax, edi
mov edi, dword [esp]
jmp 0x408234
lea ecx, [edi + 5]
mov dword [esp + 4], ecx
cmp esi, ecx
jae 0x408213
lea ecx, [eax + 0x6ecd9d8]
lea ebx, [eax + edx]
add ebx, 0x6ecd9d8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x18
cmp esi, dword [esp + 4]
jbe 0x408247
lea ecx, [eax - 0x59901788]
lea ebx, [eax + edx]
add ebx, 0xa66fe878
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb8
cmp esi, 9
ja 0x4082df
cmp esi, dword [esp]
jne 0x40839f
lea ecx, [eax + 0x45b77ae0]
lea ebx, [eax + edx]
add ebx, 0x45b77ae0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe0
jmp 0x408234
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x40826b
lea ecx, [eax + 0x4c2d5c48]
lea ebx, [eax + edx]
add ebx, 0x4c2d5c48
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 8
add esi, edi
jmp 0x408206
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x4084f4
lea ecx, [eax + 0x3f061d40]
lea ebx, [eax + edx]
add ebx, 0x3f061d40
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x40
mov ebp, esi
movzx ecx, bl
not ecx
add eax, ecx
mov esi, ebp
jmp 0x408238
cmp esi, dword [esp]
jne 0x4082b5
lea ecx, [eax + 0x22dbbd70]
lea ebx, [eax + edx]
add ebx, 0x22dbbd70
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf0
add edx, edi
add eax, edx
inc eax
cmp eax, 0x23
jb 0x408031
jmp 0x408517
cmp esi, dword [esp]
jne 0x40831e
lea ecx, [eax - 0x4bb663d8]
lea ebx, [eax + edx]
add ebx, 0xb4499c28
and ecx, edx
mov byte [esp + 4], 0xe8
mov ebp, dword [esp]
jmp 0x40828c
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x40834b
lea ecx, [eax - 0x7c6bd4f8]
lea ebx, [eax + edx]
add ebx, 0x83942b08
and ecx, edx
mov byte [esp + 4], 0xc8
add ecx, ecx
sub ebx, ecx
add bl, byte [esp + 4]
lea edi, [eax - 0x36b45a18]
lea ecx, [edx + eax]
add ecx, 0xc94ba5e8
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0xa8
mov byte [esp + eax + 0x60], cl
jmp 0x408343
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x40837b
mov dword [esp + 4], esi
lea ebp, [eax + 0x3e8f24d0]
lea ebx, [eax + edx]
add ebx, 0x3e8f24d0
and ebp, edx
mov byte [esp + 0xc], 0x50
jmp 0x4080e2
lea ecx, [eax - 0x2fc78040]
lea ebx, [eax + edx]
add ebx, 0xd0387fc0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, dl
add bl, 0xc0
lea ecx, [eax - 0x28daa668]
lea esi, [edx + eax]
add esi, 0xd7255998
and ecx, edx
add ecx, ecx
mov edx, esi
sub edx, ecx
add dl, bl
add dl, 0xd8
mov byte [esp + eax + 0x60], dl
jmp 0x408208
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x4083c5
lea ecx, [eax - 0x3002fc78]
lea ebx, [eax + edx]
add ebx, 0xcffd0388
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x48
mov ebp, edi
dec eax
mov edi, ebp
jmp 0x408238
cmp edi, eax
ja 0x40851b
lea ecx, [edi + 8]
cmp esi, ecx
jne 0x408065
lea ecx, [eax + 0xe152fe8]
lea ebx, [eax + edx]
add ebx, 0xe152fe8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xa8
jmp 0x408234
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x4083eb
lea ecx, [eax + 0x5a428c30]
lea ebx, [eax + edx]
add ebx, 0x5a428c30
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb0
jmp 0x408208
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x40840e
mov dword [esp + 4], esi
lea ebp, [eax + 0x616ae240]
lea ebx, [eax + edx]
add ebx, 0x616ae240
and ebp, edx
mov byte [esp + 0xc], 0x40
jmp 0x4080e2
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x408432
mov dword [esp + 4], esi
lea ebp, [eax + 0x763d248]
lea ebx, [eax + edx]
add ebx, 0x763d248
and ebp, edx
mov byte [esp + 0xc], 8
jmp 0x4080e2
cmp esi, dword [esp + 4]
jne 0x40845a
lea ecx, [eax + 0x681c3fe0]
lea ebx, [eax + edx]
add ebx, 0x681c3fe0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe0
jmp 0x4082f9
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x408481
lea ecx, [eax + 0x6f4495f0]
lea ebx, [eax + edx]
add ebx, 0x6f4495f0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x70
jmp 0x408206
lea ecx, [edi + 4]
cmp esi, ecx
jne 0x408190
lea ecx, [eax + 0x231739a8]
lea ebx, [eax + edx]
add ebx, 0x231739a8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x68
jmp 0x408234
lea ecx, [edi + 6]
cmp esi, ecx
jne 0x4084a4
lea ecx, [eax - 0x7c3058c0]
lea ebx, [eax + edx]
add ebx, 0x83cfa740
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x40
mov ebp, dword [esp]
jmp 0x408343
cmp esi, dword [esp + 4]
jne 0x4084ca
lea ecx, [eax + 0x7d1e49a0]
lea ebx, [eax + edx]
add ebx, 0x7d1e49a0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xa0
jmp 0x408208
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x40816e
lea ecx, [eax - 0x6e56a510]
lea ebx, [eax + edx]
add ebx, 0x91a95af0
and ecx, edx
mov byte [esp + 4], 0x70
jmp 0x408266
lea ecx, [edi + 4]
cmp esi, ecx
jne 0x4084eb
lea ecx, [eax - 0x672e4f00]
lea ebx, [eax + edx]
add ebx, 0x98d1b100
and ecx, edx
add ecx, ecx
sub ebx, ecx
jmp 0x408341
mov byte [esp + eax + 0x60], bl
jmp 0x408238
lea ebx, [eax + edx]
add ebx, 0x8b337988
add eax, 0x8b337988
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x48
jmp 0x408021
mov eax, 0x8f36f8
jmp 0x408520
xor eax, eax
jmp 0x408520
mov eax, 0x1625d20
lea esi, [esp + eax]
add esi, 0x60
xor edi, edi
mov dword [0x478378], edi
mov dword [0x478388], edi
mov dword [0x47838c], 0xf
mov byte [0x478378], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478378
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4731f0]
movups xmmword [esp + 0x140], xmm0
mov dword [esp + 0x150], 0xd226dcf8
mov word [esp + 0x154], 0xb1dc
mov dword [esp + 0x15a], edi
mov dword [esp + 0x156], edi
mov dword [esp + 0x161], edi
mov dword [esp + 0x15d], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov eax, dword [eax]
xor ecx, ecx
cmp esi, ecx
ja 0x4087c5
mov bl, byte [esp + ecx + 0x140]
movzx edx, bl
lea edi, [eax + 1]
cmp esi, edi
jae 0x408629
cmp eax, ecx
ja 0x4087d0
lea ebp, [esi + eax]
cmp ebp, ecx
jbe 0x408632
lea edi, [eax + 3]
cmp esi, edi
je 0x40864a
lea edi, [eax + 9]
cmp esi, edi
jne 0x40859a
lea esi, [ecx - 0x18828608]
lea ebx, [ecx + edx]
add ebx, 0xe77d79f8
and esi, edx
mov byte [esp], 0x38
add esi, esi
sub ebx, esi
add bl, byte [esp]
mov dword [esp], ebx
lea esi, [ecx - 0x35150afa]
lea ebx, [edx + ecx]
add ebx, 0xcaeaf506
and esi, edx
add esi, esi
sub ebx, esi
add bl, byte [esp]
add bl, 0xd6
mov byte [esp + ecx + 0x140], bl
mov ebx, dword [esp]
jmp 0x4086df
jne 0x408651
mov edi, eax
jmp 0x4086b3
cmp ebp, 1
je 0x408658
cmp esi, edi
je 0x4086f5
lea ebx, [eax + 2]
cmp esi, ebx
jne 0x408724
mov edi, eax
jmp 0x408712
lea ebx, [eax + 2]
cmp esi, ebx
jne 0x4086bc
lea ebp, [ecx - 0x4728f2ce]
lea ebx, [edx + ecx]
add ebx, 0xb8d70d32
and ebp, edx
add ebp, ebp
sub ebx, ebp
add bl, 0xa2
mov byte [esp + ecx + 0x140], bl
movzx ebx, bl
not eax
add eax, ecx
mov ecx, eax
sub ecx, ebx
lea ebp, [ecx + 0x2fcd1948]
and ebp, edx
add edx, ecx
add edx, 0x2fcd1948
add ebp, ebp
sub edx, ebp
add dl, 8
mov byte [esp + ecx + 0x140], dl
add ebx, esi
inc esi
sub eax, ebx
mov bl, byte [esp + eax + 0x13e]
add eax, 0xfffffffe
mov ecx, eax
mov eax, edi
movzx edx, bl
add edx, edi
add ecx, edx
jmp 0x408715
lea ebx, [eax + 3]
cmp esi, ebx
jne 0x4086ea
lea edi, [ecx + 0x1c9284f2]
lea ebx, [ecx + edx]
add ebx, 0x1c9284f2
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x62
add esi, eax
mov ebp, esi
movzx edx, bl
not edx
add ecx, edx
mov esi, ebp
jmp 0x408715
lea ebx, [eax + 9]
cmp esi, ebx
jne 0x4085c3
lea ebx, [ecx - 0x23012326]
lea eax, [edx + ecx]
add eax, 0xdcfedcda
and ebx, edx
add ebx, ebx
sub eax, ebx
add al, 0xa
mov byte [esp + ecx + 0x140], al
dec ecx
mov eax, edi
inc ecx
cmp ecx, 0x25
jb 0x4085aa
jmp 0x4087cc
mov dword [esp], ebx
lea ebx, [eax + 3]
cmp esi, ebx
jne 0x408748
lea esi, [ecx + 0x105141ee]
lea ebx, [ecx + edx]
add ebx, 0x105141ee
and esi, edx
mov byte [esp], 0x7e
jmp 0x4085f5
lea ebx, [eax + 5]
cmp esi, ebx
jne 0x40876c
lea edi, [ecx - 0x13d68dba]
lea ebx, [ecx + edx]
add ebx, 0xec297246
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x16
jmp 0x4086dd
lea ebx, [eax + 7]
cmp esi, ebx
je 0x408658
cmp esi, dword [esp]
jbe 0x408796
lea edi, [ecx + 0x1acfdf0c]
lea ebx, [ecx + edx]
add ebx, 0x1acfdf0c
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xac
jmp 0x4087b9
lea edi, [eax + 6]
cmp esi, edi
je 0x40864a
lea edi, [ecx + 0x76f60c16]
lea ebx, [ecx + edx]
add ebx, 0x76f60c16
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x66
mov byte [esp + ecx + 0x140], bl
jmp 0x408715
mov eax, 0x862ade
jmp 0x4087d5
xor eax, eax
jmp 0x4087d5
mov eax, 0x1501ec8
lea esi, [esp + eax]
add esi, 0x140
xor ebx, ebx
mov dword [0x478390], ebx
mov dword [0x4783a0], ebx
mov dword [0x4783a4], 0xf
mov byte [0x478390], bl
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478390
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [str._DtpmkHyK_]
movups xmmword [esp + 0x234], xmm0
mov byte [esp + 0x244], 0xdc
xorps xmm0, xmm0
movups xmmword [esp + 0x245], xmm0
mov byte [esp + 0x255], bl
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x408a8e
mov dl, byte [esp + eax + 0x234]
movzx edi, dl
lea ebx, [ecx + 1]
cmp esi, ebx
jae 0x4088fb
cmp ecx, eax
ja 0x408a99
lea ebp, [esi + ecx]
cmp ebp, eax
ja 0x40883a
cmp ebp, 0x28
je 0x408904
mov dword [esp], esi
lea esi, [ecx + 0x10]
cmp dword [esp], esi
mov esi, dword [esp]
jbe 0x408990
mov dword [esp + 4], ebx
lea esi, [eax + 0x5b9fff1a]
lea ebx, [eax + edi]
add ebx, 0x5b9fff1a
and esi, edi
add esi, esi
sub ebx, esi
add bl, 0x4a
mov dword [esp + 0xc], ebx
mov esi, dword [esp]
cmp esi, 5
mov ebx, dword [esp + 4]
ja 0x4089b5
cmp esi, ebx
je 0x408962
lea edx, [ecx + 2]
cmp esi, edx
je 0x408933
lea edx, [ecx + 5]
cmp esi, edx
jne 0x408a75
lea esi, [eax + 0x42d82038]
lea edx, [eax + edi]
add edx, 0x42d82038
and esi, edi
add esi, esi
sub edx, esi
mov esi, dword [esp]
add dl, 0x78
jmp 0x4089f2
je 0x408962
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x408978
mov dword [esp], esi
lea esi, [eax - 0x2f3f0ca]
lea edx, [edi + eax]
add edx, 0xfd0c0f36
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x86
mov byte [esp + eax + 0x234], dl
movzx edx, dl
not ecx
add ecx, eax
sub ecx, edx
mov eax, ecx
mov ecx, ebx
lea esi, [eax + 0x6fdc5258]
lea edx, [eax + edi]
add edx, 0x6fdc5258
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x98
mov byte [esp + eax + 0x234], dl
mov esi, dword [esp]
sub eax, esi
inc esi
mov dl, byte [esp + eax + 0x232]
add eax, 0xfffffffe
movzx edx, dl
add edx, ecx
add eax, edx
inc eax
cmp eax, 0x22
jb 0x40884a
jmp 0x408a95
lea ebp, [ecx + 4]
cmp esi, ebp
je 0x408a07
lea ebp, [ecx + 6]
cmp esi, ebp
jne 0x408867
jmp 0x408994
cmp esi, ebx
jne 0x4089fc
lea edx, [eax + 0x31cb02ae]
lea ecx, [edi + eax]
add ecx, 0x31cb02ae
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x3e
mov byte [esp + eax + 0x234], cl
jmp 0x408a09
lea esi, [eax - 0x5b64ba30]
lea ebx, [eax + edi]
add ebx, 0xa49b45d0
and esi, edi
add esi, esi
sub ebx, esi
add dl, bl
add dl, 0x50
lea esi, [eax + 0x176b88f2]
lea ebx, [eax + edi]
add ebx, 0x176b88f2
and esi, edi
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0x62
mov byte [esp + eax + 0x234], bl
mov esi, ebp
movzx edx, dl
not edx
jmp 0x408967
lea esi, [ecx + 2]
cmp dword [esp], esi
mov esi, dword [esp]
jne 0x408a11
mov ebx, ecx
dec eax
mov ecx, ebx
jmp 0x408969
lea esi, [ecx + 5]
cmp dword [esp], esi
jne 0x408a36
lea esi, [eax - 0x429cdb4e]
lea edx, [eax + edi]
add edx, 0xbd6324b2
and esi, edi
add esi, esi
sub edx, esi
add dl, 0x22
mov esi, dword [esp]
jmp 0x4089f2
lea esi, [ecx + 3]
cmp dword [esp], esi
mov esi, dword [esp]
je 0x408904
lea esi, [ecx + 7]
cmp dword [esp], esi
mov esi, dword [esp]
je 0x408962
mov dword [esp + 4], ebx
lea esi, [eax + 0x72d04322]
lea ebx, [eax + edi]
add ebx, 0x72d04322
and esi, edi
add esi, esi
sub ebx, esi
add bl, 0x12
jmp 0x4088ad
cmp ecx, 3
ja 0x408994
mov edx, dword [esp + 0xc]
mov byte [esp + eax + 0x234], dl
jmp 0x408969
mov eax, 0xfd5dfa
jmp 0x408a9e
xor eax, eax
jmp 0x408a9e
mov eax, 0x16d1ad8
lea esi, [esp + eax]
add esi, 0x234
xor ebx, ebx
mov dword [0x4783a8], ebx
mov dword [0x4783b8], ebx
mov dword [0x4783bc], 0xf
mov byte [0x4783a8], bl
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4783a8
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473210]
movups xmmword [esp + 0x3b4], xmm0
movaps xmm0, xmmword [0x473220]
movups xmmword [esp + 0x3c4], xmm0
mov dword [esp + 0x3d8], ebx
mov dword [esp + 0x3d4], ebx
mov byte [esp + 0x3dc], bl
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov esi, dword [eax]
xor eax, eax
cmp edi, eax
ja 0x408ea1
mov dl, byte [esp + eax + 0x3b4]
movzx ebp, dl
lea ecx, [esi + 1]
mov dword [esp], ecx
cmp edi, ecx
jae 0x408bc4
cmp esi, eax
ja 0x408eac
lea ecx, [edi + esi]
cmp ecx, eax
jbe 0x408bfd
mov dword [esp + 0x14], ebp
mov dword [esp + 0x10], edx
lea ecx, [esi + 2]
mov dword [esp + 4], ecx
lea ebx, [esi + 3]
lea ecx, [esi + 4]
mov dword [esp + 0xc], ecx
lea ecx, [esi + 0xa]
lea ebp, [esi + 0x10]
lea edx, [esi + 0x20]
mov dword [esp + 8], esi
add esi, 0x28
cmp edi, dword [esp]
je 0x408cee
cmp edi, dword [esp + 4]
je 0x408cfa
cmp edi, ebx
je 0x408d51
cmp edi, dword [esp + 0xc]
je 0x408d73
cmp edi, ecx
je 0x408d99
cmp edi, ebp
je 0x408dd0
cmp edi, edx
je 0x408e1c
cmp edi, esi
mov edi, 0x28
je 0x408b79
jmp 0x408b0d
je case.0x408c7a.39
lea ecx, [esi + 2]
cmp edi, ecx
je case.0x408c7a.38
lea ecx, [esi + 3]
cmp edi, ecx
jne 0x408cac
lea ecx, [eax - 0x60bda7e7]
lea ebx, [eax + ebp]
add ebx, 0x9f425819
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0x51
jmp 0x408d1e
lea ecx, [esi + 0x28]
cmp edi, ecx
jae 0x408c55
lea ecx, [eax + 0x1ff1693d]
lea ebx, [eax + ebp]
add ebx, 0x1ff1693d
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0x55
lea ecx, [esi + 0xa]
cmp edi, ecx
jbe 0x408ca0
lea ecx, [eax - 0x6379ec77]
lea ebx, [eax + ebp]
add ebx, 0x9c861389
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0x41
mov dword [esp + 0x10], edx
cmp edi, 1
ja 0x408cbc
cmp edi, dword [esp]
jne 0x408e28
xor edi, edi
inc edi
jmp 0x408e22
lea ecx, [eax - 0x61325dff]
lea ebx, [eax + ebp]
add ebx, 0x9ecda201
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0xf9
mov edi, 0x28
lea ecx, [esi - 0x23]
cmp ecx, 4
ja case.0x408c7a.37
jmp dword [ecx*4 + 0x473908]
lea ecx, [eax + 0x7d096064]
lea ebx, [eax + ebp]
add ebx, 0x7d096064
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0x44
mov edi, 0x28
jmp 0x408d1e
cmp edi, dword [esp]
jne 0x408cdc
mov ecx, esi
jmp 0x408e3b
lea ecx, [esi + 6]
cmp edi, ecx
jne 0x408b3d
jmp case.0x408c7a.36
lea edx, [eax - 0x5ed3f38]
lea ecx, [eax + ebp]
add ecx, 0xfa12c0c8
and edx, ebp
add edx, edx
sub ecx, edx
mov ebx, dword [esp + 0x10]
add bl, cl
add bl, 0x88
jmp 0x408d1e
lea ecx, [esi + 3]
cmp edi, ecx
jne 0x408e60
mov edi, ecx
jmp case.0x408c7a.36
mov edi, dword [esp]
mov esi, dword [esp + 8]
jmp case.0x408c7a.36
lea ecx, [eax + 0x7963afa4]
mov ebp, dword [esp + 0x14]
lea ebx, [eax + ebp]
add ebx, 0x7963afa4
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0x84
mov edi, dword [esp + 4]
mov esi, dword [esp + 8]
lea edx, [eax + 0x1a042a05]
lea ecx, [eax + ebp]
add ecx, 0x1a042a05
and edx, ebp
add edx, edx
sub ecx, edx
add cl, bl
add cl, 0xdd
mov byte [esp + eax + 0x3b4], cl
mov edx, ebx
mov ebx, edi
add ebx, esi
mov edi, ebx
movzx ecx, dl
not ecx
jmp 0x408e0b
lea ecx, [eax - 0x46b97de2]
mov esi, dword [esp + 0x14]
lea edx, [eax + esi]
add edx, 0xb946821e
and ecx, esi
add ecx, ecx
sub edx, ecx
add dl, 0x2e
mov esi, dword [esp + 8]
jmp 0x408d43
lea ecx, [eax - 0x6d6ab68]
mov esi, dword [esp + 0x14]
lea edx, [eax + esi]
add edx, 0xf9295498
and ecx, esi
add ecx, ecx
sub edx, ecx
add dl, 0xd8
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 8]
jmp 0x408d47
mov edi, ecx
mov esi, dword [esp + 8]
mov ebp, dword [esp + 0x14]
lea edx, [eax + 0x59e6fc7f]
lea ecx, [eax + ebp]
add ecx, 0x59e6fc7f
and edx, ebp
add edx, edx
sub ecx, edx
add cl, 0x87
mov byte [esp + eax + 0x3b4], cl
movzx ecx, cl
not esi
add eax, esi
sub eax, ecx
mov esi, dword [esp]
jmp case.0x408c7a.38
mov edi, ebp
mov esi, dword [esp + 8]
mov ebp, dword [esp + 0x14]
lea edx, [eax + 0x79d865bc]
lea ecx, [eax + ebp]
add ecx, 0x79d865bc
and edx, ebp
add edx, edx
sub ecx, edx
add cl, 0xdc
mov byte [esp + eax + 0x3b4], cl
sub eax, edi
inc edi
mov dl, byte [esp + eax + 0x3b2]
add eax, 0xfffffffe
movzx ecx, dl
add ecx, esi
add eax, ecx
inc eax
cmp eax, 0x29
jb 0x408b1d
jmp 0x408ea8
mov edi, edx
mov esi, dword [esp + 8]
mov edx, dword [esp + 0x10]
jmp case.0x408c7a.39
mov ecx, 0x28
cmp esi, 0x27
ja 0x408e3b
mov byte [esp + eax + 0x3b4], bl
jmp 0x408e0d
lea esi, [eax - 0x25dea875]
lea edx, [eax + ebp]
add edx, 0xda21578b
and esi, ebp
add esi, esi
sub edx, esi
add dl, 0x33
mov byte [esp + eax + 0x3b4], dl
inc ecx
mov esi, ecx
dec eax
jmp 0x408e0d
lea ecx, [esi + 5]
cmp edi, ecx
jne 0x408e84
lea ecx, [eax + 0x1bd70265]
lea edx, [eax + ebp]
add edx, 0x1bd70265
and ecx, ebp
add ecx, ecx
sub edx, ecx
add dl, 0x3d
jmp 0x408d47
lea ecx, [esi + 7]
cmp edi, ecx
je 0x408da3
lea ecx, [esi + 2]
cmp edi, ecx
jne 0x408c3b
mov edi, ecx
jmp case.0x408c7a.39
mov eax, 0x641e39
jmp 0x408eb1
xor eax, eax
jmp 0x408eb1
mov eax, 0x172b4fc
lea esi, [esp + eax]
add esi, 0x3b4
xor edi, edi
mov dword [0x4783c0], edi
mov dword [0x4783d0], edi
mov dword [0x4783d4], 0xf
mov byte [0x4783c0], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4783c0
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473230]
movups xmmword [esp + 0x388], xmm0
mov word [esp + 0x398], 0xc99a
xorps xmm0, xmm0
movups xmmword [esp + 0x39a], xmm0
mov dword [esp + 0x3ad], edi
mov dword [esp + 0x3a9], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x409199
mov bl, byte [esp + eax + 0x388]
movzx edx, bl
lea edi, [ecx + 1]
cmp esi, edi
jae 0x408f8f
cmp ecx, eax
ja 0x4091a4
lea ebx, [esi + ecx]
cmp ebx, eax
jbe 0x408ffe
lea ebx, [ecx + 9]
cmp esi, ebx
je 0x40904e
lea edi, [ecx + 5]
cmp esi, edi
jne 0x409076
lea edi, [eax - 0xc49ffa6]
lea ebx, [eax + edx]
add ebx, 0xf3b6005a
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x8a
jmp 0x4090ea
je 0x408ff4
lea ebx, [ecx + 3]
cmp esi, ebx
jne 0x409023
lea ebp, [eax - 0x686e7d83]
lea ebx, [edx + eax]
add ebx, 0x9791827d
and ebp, edx
add ebp, ebp
sub ebx, ebp
add bl, 0x95
mov byte [esp + eax + 0x388], bl
movzx ebx, bl
not ecx
add ecx, eax
sub ecx, ebx
mov eax, ecx
mov ecx, edi
lea edi, [eax + 0x42daa534]
lea ebx, [eax + edx]
add ebx, 0x42daa534
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x94
mov byte [esp + eax + 0x388], bl
sub eax, esi
inc esi
mov bl, byte [esp + eax + 0x386]
add eax, 0xfffffffe
movzx edx, bl
add edx, ecx
jmp 0x4090f1
cmp esi, edi
jne 0x409047
lea ebx, [eax - 0x1593085f]
lea ecx, [edx + eax]
add ecx, 0xea6cf7a1
and ebx, edx
add ebx, ebx
sub ecx, ebx
add cl, 0x99
mov byte [esp + eax + 0x388], cl
jmp 0x40904e
lea ebx, [ecx + 2]
cmp esi, ebx
jne 0x409054
lea edi, [eax + 0x5c247ddd]
lea ebx, [eax + edx]
add ebx, 0x5c247ddd
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xf5
jmp 0x4090ea
lea ebx, [ecx + 2]
cmp esi, ebx
jne 0x40909b
dec eax
jmp 0x4090f5
lea ebx, [ecx + 5]
cmp esi, ebx
jne 0x409106
lea edi, [eax - 0x4d493cb5]
lea ebx, [eax + edx]
add ebx, 0xb2b6c34b
and edi, edx
mov byte [esp], 0xf3
jmp 0x4090bb
lea edi, [ecx + 0x20]
cmp esi, edi
jne 0x409116
lea edi, [eax + 0x4a4845c8]
lea ebx, [eax + edx]
add ebx, 0x4a4845c8
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x88
jmp 0x4090ec
lea ebx, [ecx + 3]
cmp esi, ebx
jne 0x409126
lea edi, [eax + 0x2ab65b53]
lea ebx, [eax + edx]
add ebx, 0x2ab65b53
and edi, edx
mov byte [esp], 0xbb
add edi, edi
sub ebx, edi
add bl, byte [esp]
mov dword [esp], ebx
lea edi, [eax + 0x40ff3d0f]
lea ebx, [edx + eax]
add ebx, 0x40ff3d0f
and edi, edx
add edi, edi
sub ebx, edi
add bl, byte [esp]
add bl, 0x97
mov byte [esp + eax + 0x388], bl
mov ebx, dword [esp]
add esi, ecx
movzx edx, bl
not edx
add eax, edx
mov edi, ecx
inc eax
mov ecx, edi
cmp eax, 0x29
jb 0x408f30
jmp 0x4091a0
lea ebx, [ecx + 9]
cmp esi, ebx
jne 0x408f49
jmp 0x409002
lea edi, [ecx + 2]
cmp esi, edi
je 0x408fc8
jmp 0x408f20
lea ebx, [ecx + 5]
cmp esi, ebx
jne 0x409147
lea edi, [eax - 0x282519d1]
lea ebx, [eax + edx]
add ebx, 0xd7dae62f
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xb7
jmp 0x4090ec
lea ebx, [ecx + 7]
cmp esi, ebx
je 0x408f9c
lea edi, [ecx + 4]
cmp esi, edi
jne 0x409176
lea edi, [eax - 0x71b7863c]
lea ebx, [eax + edx]
add ebx, 0x8e4879c4
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xa4
jmp 0x4090ea
lea edi, [eax - 0x54b6dd49]
lea ebx, [eax + edx]
add ebx, 0xab4922b7
and edi, edx
add edi, edi
sub ebx, edi
dec bl
mov byte [esp + eax + 0x388], bl
jmp 0x4090f3
mov eax, 0x16c75ab
jmp 0x4091a9
xor eax, eax
jmp 0x4091a9
mov eax, 0x16352f4
lea esi, [esp + eax]
add esi, 0x388
xor edi, edi
mov dword [0x4783d8], edi
mov dword [0x4783e8], edi
mov dword [0x4783ec], 0xf
mov byte [0x4783d8], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4783d8
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473240]
movups xmmword [esp + 0x20c], xmm0
mov dword [esp + 0x21c], 0x60e6375
mov dword [esp + 0x220], 0x37647067
mov dword [esp + 0x224], 0x7a6e781c
mov word [esp + 0x228], 0xdd00
mov dword [esp + 0x22e], edi
mov dword [esp + 0x22a], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x4094d2
mov bl, byte [esp + eax + 0x20c]
movzx edx, bl
lea edi, [ecx + 1]
cmp esi, edi
jae 0x40929c
cmp ecx, eax
ja 0x4094dd
lea ebp, [ecx + 9]
cmp esi, ebp
jae 0x4092d7
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x409301
lea ebp, [ecx + 6]
cmp esi, ebp
je 0x409305
lea ebp, [ecx + 0x10]
cmp esi, ebp
je 0x40935b
cmp esi, edi
je 0x4093bc
lea edx, [ecx + 5]
cmp esi, edx
je 0x409414
jmp 0x40922e
je 0x409414
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x4093e8
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x409354
lea edi, [eax - 0x7325d0a0]
lea ebx, [eax + edx]
add ebx, 0x8cda2f60
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x60
add esi, ecx
jmp 0x4093a8
cmp esi, edi
je 0x409305
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x40935b
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x409372
lea edi, [eax - 0x597171e0]
lea ebx, [eax + edx]
add ebx, 0xa68e8e20
jmp 0x40939f
cmp esi, edi
jne 0x409326
lea ebx, [eax - 0x64bf2d20]
lea ecx, [eax + edx]
add ecx, 0x9b40d2e0
and ebx, edx
add ebx, ebx
sub ecx, ebx
add cl, 0xe0
mov byte [esp + eax + 0x20c], cl
jmp 0x40935d
mov dword [esp], ebp
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x40935d
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x409389
lea esi, [eax + 0x5e978ee0]
lea ebx, [eax + edx]
add ebx, 0x5e978ee0
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0xe0
mov ebp, dword [esp]
jmp 0x4093aa
lea ebp, [ecx + 7]
cmp esi, ebp
jne 0x409365
mov edi, ecx
dec eax
mov ecx, edi
jmp 0x40941b
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x409257
jmp 0x409305
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x4093bc
lea ebp, [ecx + 6]
cmp esi, ebp
jne 0x409266
jmp 0x409414
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x4093b5
lea edi, [eax + 0x32622320]
lea ebx, [eax + edx]
add ebx, 0x32622320
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x20
mov ebp, esi
movzx edx, bl
not edx
add eax, edx
mov esi, ebp
jmp 0x40941b
lea ebp, [ecx + 7]
cmp esi, ebp
jne 0x40942a
lea ebp, [eax + 0x42d5fb60]
lea ebx, [eax + edx]
add ebx, 0x42d5fb60
and ebp, edx
add ebp, ebp
sub ebx, ebp
add bl, 0x60
mov byte [esp + eax + 0x20c], bl
movzx ebx, bl
not ecx
add ecx, eax
sub ecx, ebx
mov eax, ecx
mov ecx, edi
lea edi, [eax - 0x5344ba80]
lea ebx, [eax + edx]
add ebx, 0xacbb4580
and edi, edx
add edi, edi
sub ebx, edi
xor bl, 0x80
mov byte [esp + eax + 0x20c], bl
sub eax, esi
inc esi
mov bl, byte [esp + eax + 0x20a]
add eax, 0xfffffffe
movzx edx, bl
add edx, ecx
add eax, edx
inc eax
cmp eax, 0x26
jb 0x40923e
jmp 0x4094d9
cmp esi, 8
ja 0x409458
lea ebx, [ecx + 4]
cmp esi, ebx
mov ebp, dword [esp]
jne 0x4094a3
lea esi, [eax - 0x1dcec840]
lea ebx, [eax + edx]
add ebx, 0xe23137c0
and esi, edx
add esi, esi
sub ebx, esi
mov edi, edx
mov dl, 0xc0
mov dword [esp + 4], edx
jmp 0x409475
lea esi, [eax + 0x5261d00]
mov edi, edx
add edx, eax
add edx, 0x5261d00
and esi, edi
add esi, esi
sub edx, esi
mov dword [esp + 4], edx
mov ebp, dword [esp]
mov edx, dword [esp + 4]
add dl, bl
lea esi, [eax + 0x6f0b6720]
lea ebx, [eax + edi]
add ebx, 0x6f0b6720
and esi, edi
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0x20
mov byte [esp + eax + 0x20c], bl
mov ebx, edx
jmp 0x4093aa
lea ebx, [ecx + 6]
cmp esi, ebx
je 0x409305
lea edi, [eax + 0x69e54a20]
lea ebx, [eax + edx]
add ebx, 0x69e54a20
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x20
mov byte [esp + eax + 0x20c], bl
jmp 0x40941b
mov eax, 0x7317a0
jmp 0x4094e2
xor eax, eax
jmp 0x4094e2
mov eax, 0x14dcd80
lea esi, [esp + eax]
add esi, 0x20c
xor ebx, ebx
mov dword [0x4783f0], ebx
mov dword [0x478400], ebx
mov dword [0x478404], 0xf
mov byte [0x4783f0], bl
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4783f0
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473250]
movups xmmword [esp + 0x330], xmm0
mov dword [esp + 0x340], 0xd3b4b25a
xorps xmm0, xmm0
movups xmmword [esp + 0x344], xmm0
mov byte [esp + 0x354], bl
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x409757
mov bl, byte [esp + eax + 0x330]
movzx ecx, bl
lea ebp, [edx + 1]
cmp esi, ebp
jae 0x4095cd
cmp edx, eax
ja 0x409762
lea edi, [esi + edx]
cmp edi, eax
jbe 0x4095d6
lea ebp, [edx + 9]
cmp esi, ebp
jne 0x409676
mov ebp, edx
lea esi, [eax - 0x2f554744]
lea edx, [eax + ecx]
add edx, 0xd0aab8bc
and esi, ecx
add esi, esi
sub edx, esi
add dl, 0xdc
lea esi, [eax - 0x49bdbe4d]
lea ebx, [eax + ecx]
add ebx, 0xb64241b3
and esi, ecx
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0x1b
mov byte [esp + eax + 0x330], bl
jmp 0x4096fb
jne 0x409609
mov ebp, edx
jmp 0x40966a
cmp edi, 6
je 0x409614
cmp esi, ebp
jne 0x4096a7
lea edi, [eax - 0x374519c3]
lea edx, [eax + ecx]
add edx, 0xc8bae63d
and edi, ecx
add edi, edi
sub edx, edi
add dl, 0x55
mov byte [esp + eax + 0x330], dl
mov edx, esi
jmp 0x4096a4
lea edi, [edx + 3]
cmp esi, edi
jne 0x409699
lea edi, [eax - 0x5c3662d7]
lea ebx, [ecx + eax]
add ebx, 0xa3c99d29
and edi, ecx
add edi, edi
sub ebx, edi
add bl, 0xe1
mov byte [esp + eax + 0x330], bl
movzx edi, bl
not edx
add edx, eax
sub edx, edi
mov eax, edx
lea edi, [eax + 0x1a8d4ae4]
lea ebx, [eax + ecx]
add ebx, 0x1a8d4ae4
and edi, ecx
add edi, edi
sub ebx, edi
add bl, 0xc4
mov byte [esp + eax + 0x330], bl
sub eax, esi
inc esi
mov bl, byte [esp + eax + 0x32e]
add eax, 0xfffffffe
movzx edx, bl
add edx, ebp
add eax, edx
jmp 0x409704
lea ebp, [edx + 3]
cmp esi, ebp
jne 0x4096ca
mov ebp, edx
lea esi, [eax - 0x41cdebce]
lea edx, [eax + ecx]
add edx, 0xbe321432
and esi, ecx
add esi, esi
sub edx, esi
add dl, 0xa2
jmp 0x4096fb
lea edi, [edx + 6]
cmp esi, edi
jne 0x409573
dec eax
jmp 0x409706
lea ebp, [edx + 2]
cmp esi, ebp
jne 0x4096d8
mov ebp, edx
lea esi, [eax - 0xfbad123]
lea edx, [eax + ecx]
add edx, 0xf0452edd
and esi, ecx
add esi, esi
sub edx, esi
add dl, 0xf5
jmp 0x4096fb
mov ebp, edx
add edx, 4
cmp esi, edx
je 0x40966a
jmp 0x40954a
lea edi, [edx + 5]
cmp esi, edi
jne 0x409712
mov ebp, edx
lea edi, [eax - 0x223375ad]
lea edx, [eax + ecx]
add edx, 0xddcc8a53
and edi, ecx
add edi, edi
sub edx, edi
add dl, 0xbb
mov edi, esi
movzx edx, dl
not edx
add eax, edx
mov esi, edi
mov edx, ebp
inc eax
cmp eax, 0x25
jb 0x40955a
jmp 0x40975e
lea edi, [edx + 3]
cmp esi, edi
jne 0x409720
mov ebp, edx
jmp 0x40963e
lea edi, [edx + 8]
cmp esi, edi
je 0x4095cf
lea edi, [edx + 6]
cmp esi, edi
je 0x4096a4
lea edi, [eax + 0x76c3adbb]
lea ebx, [eax + ecx]
add ebx, 0x76c3adbb
and edi, ecx
add edi, edi
sub ebx, edi
add bl, 0xe3
mov byte [esp + eax + 0x330], bl
jmp 0x409706
mov eax, 0x17c675f
jmp 0x409767
xor eax, eax
jmp 0x409767
mov eax, 0x178b9a4
lea esi, [esp + eax]
add esi, 0x330
xor eax, eax
mov dword [0x478408], eax
mov dword [0x478418], eax
mov dword [0x47841c], 0xf
mov byte [0x478408], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478408
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473260]
movups xmmword [esp + 0x258], xmm0
mov word [esp + 0x268], 0xada1
mov byte [esp + 0x26a], 2
xorps xmm0, xmm0
movups xmmword [esp + 0x26b], xmm0
mov word [esp + 0x27b], 0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edi, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x409b00
mov dl, byte [esp + eax + 0x258]
movzx ecx, dl
mov dword [esp], ecx
lea ebx, [edi + 1]
cmp esi, ebx
jae 0x40985e
cmp edi, eax
ja 0x409b0b
lea ebp, [edi + 8]
cmp esi, ebp
jae 0x40988f
lea ecx, [esi + edi]
cmp ecx, eax
jbe 0x4098cd
mov ecx, esi
cmp esi, ebx
je 0x409a2c
lea ecx, [edi + 2]
cmp esi, ecx
je 0x409a2a
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x409a4e
lea ecx, [eax - 0x29d6ba20]
mov ebp, dword [esp]
lea edx, [eax + ebp]
add edx, 0xd62945e0
and ecx, ebp
add ecx, ecx
sub edx, ecx
add dl, 0xe0
jmp 0x4099af
je 0x409931
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x40993b
lea ecx, [eax + 0x2d4e3c98]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x2d4e3c98
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0xd8
jmp 0x4099d2
cmp esi, ebx
je 0x409963
lea ecx, [edi + 2]
cmp esi, ecx
je 0x409a2a
lea ecx, [edi + 5]
cmp esi, ecx
jne 0x409a3e
lea ecx, [eax + 0x6329ed28]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0x6329ed28
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0xe8
jmp 0x4099d0
cmp ecx, 9
jne 0x40995f
lea edx, [eax - 0x5724f6b8]
mov ebp, dword [esp]
lea ecx, [eax + ebp]
add ecx, 0xa8db0948
and edx, ebp
add edx, edx
sub ecx, edx
add cl, 8
mov byte [esp + eax + 0x258], cl
movzx ecx, cl
not edi
add edi, eax
sub edi, ecx
mov eax, edi
mov edi, ebx
lea edx, [eax + 0x1faad720]
lea ecx, [eax + ebp]
add ecx, 0x1faad720
and edx, ebp
add edx, edx
sub ecx, edx
add cl, 0x20
mov byte [esp + eax + 0x258], cl
sub eax, esi
inc esi
mov dl, byte [esp + eax + 0x256]
add eax, 0xfffffffe
movzx ecx, dl
add ecx, edi
jmp 0x4099d7
lea ecx, [edi + 3]
cmp esi, ecx
mov ebp, dword [esp]
jne 0x40998c
lea ecx, [eax + 0x1aedd848]
lea edx, [eax + ebp]
add edx, 0x1aedd848
and ecx, ebp
add ecx, ecx
sub edx, ecx
add dl, 8
jmp 0x4099d0
cmp esi, ebx
jne 0x4099db
lea edx, [eax - 0x32642e18]
mov edi, dword [esp]
lea ecx, [eax + edi]
add ecx, 0xcd9bd1e8
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0xa8
mov byte [esp + eax + 0x258], cl
mov ecx, ebx
jmp 0x409a2c
lea ecx, [edi + 4]
cmp esi, ecx
jne 0x409a23
lea ecx, [eax + 0x88d73f8]
lea edx, [eax + ebp]
add edx, 0x88d73f8
and ecx, ebp
add ecx, ecx
sub edx, ecx
add dl, 0x38
lea ebx, [eax - 0x44c49268]
lea ecx, [eax + ebp]
add ecx, 0xbb3b6d98
and ebx, ebp
add ebx, ebx
sub ecx, ebx
add cl, dl
add cl, 0xd8
mov byte [esp + eax + 0x258], cl
add esi, edi
movzx ecx, dl
not ecx
add eax, ecx
jmp 0x409a2f
lea ebp, [edi + 2]
mov ecx, ebx
cmp esi, ebp
je 0x409a2c
lea ecx, [edi + 3]
cmp esi, ecx
je 0x409a2a
lea ecx, [edi + 4]
cmp esi, ecx
je 0x409931
cmp esi, 3
ja 0x409ace
lea edx, [eax + 0x76cfcdd8]
mov ebx, dword [esp]
lea ecx, [eax + ebx]
add ecx, 0x76cfcdd8
and edx, ebx
add edx, edx
sub ecx, edx
add cl, 0x18
mov byte [esp + eax + 0x258], cl
jmp 0x409a2f
lea ecx, [edi + 5]
cmp esi, ecx
jne 0x409a75
mov ecx, edi
dec eax
mov edi, ecx
inc eax
cmp eax, 0x25
jb 0x4097e8
jmp 0x409b07
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x409813
jmp 0x4098d6
lea ecx, [edi + 4]
cmp esi, ecx
jne 0x409a90
lea ecx, [eax - 0x3c371e70]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0xc3c8e190
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x10
jmp 0x4099d0
lea ecx, [edi + 6]
cmp esi, ecx
je 0x409985
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x409804
jmp 0x409963
lea ecx, [edi + 5]
cmp esi, ecx
jne 0x409ab7
lea ecx, [eax - 0x4e9782c0]
mov ebx, dword [esp]
lea edx, [eax + ebx]
add edx, 0xb1687d40
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x40
jmp 0x4099d2
lea ecx, [edi + 6]
cmp esi, ecx
je 0x4098d6
cmp esi, ebp
jne 0x409af0
mov ebp, dword [esp]
jmp 0x409905
lea ebx, [eax + 0x446b9fc0]
mov ebp, dword [esp]
lea ecx, [eax + ebp]
add ecx, 0x446b9fc0
and ebx, ebp
add ebx, ebx
sub ecx, ebx
add dl, cl
add dl, 0xc0
jmp 0x4099af
lea ecx, [edi + 9]
cmp esi, ecx
je 0x409931
jmp 0x4097d8
mov eax, 0xee1af8
jmp 0x409b10
xor eax, eax
jmp 0x409b10
mov eax, 0x15e4d20
lea esi, [esp + eax]
add esi, 0x258
xor ebx, ebx
mov dword [0x478420], ebx
mov dword [0x478430], ebx
mov dword [0x478434], 0xf
mov byte [0x478420], bl
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478420
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473270]
movups xmmword [esp + 0x3c], xmm0
mov dword [esp + 0x4c], 0xf9effc21
mov dword [esp + 0x50], 0xfbefc9aa
mov word [esp + 0x54], 0xeded
mov byte [esp + 0x56], 0x80
mov dword [esp + 0x5b], ebx
mov dword [esp + 0x57], ebx
mov byte [esp + 0x5f], bl
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov edx, dword [eax]
xor eax, eax
cmp edi, eax
ja 0x409e78
movzx ecx, byte [esp + eax + 0x3c]
lea ebp, [edx + 1]
cmp edi, ebp
jae 0x409bd8
cmp edx, eax
ja 0x409e83
lea esi, [edi + edx]
cmp esi, eax
ja 0x409c2d
lea ebx, [eax + 0xdb6f]
mov dword [esp], esi
lea esi, [eax + ecx]
add esi, 0xdb6f
and ebx, ecx
add ebx, ebx
sub esi, ebx
mov ebx, esi
mov esi, dword [esp]
add bl, 0xf7
jmp 0x409c6f
jne 0x409bf7
lea esi, [eax + 0x2924d]
lea ebx, [eax + ecx]
add ebx, 0x2924d
and esi, ecx
add esi, esi
sub ebx, esi
add bl, 0xe5
jmp 0x409d95
lea esi, [edx + 2]
cmp edi, esi
jne 0x409c1e
lea esi, [eax + 0x4492b]
lea ebx, [eax + ecx]
add ebx, 0x4492b
and esi, ecx
add esi, esi
sub ebx, esi
add bl, 0xd3
mov dword [esp], ebx
jmp 0x409cbc
cmp edx, eax
ja 0x409e83
lea esi, [edi + edx]
cmp esi, eax
jbe 0x409c6f
cmp edi, ebp
jne 0x409ceb
lea edx, [eax + 0x5e49b2]
lea ebx, [eax + ecx]
add ebx, 0x5e49b2
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x22
lea esi, [eax + 0x5849a9]
lea edx, [ecx + eax]
add edx, 0x5849a9
and esi, ecx
add esi, esi
sub edx, esi
add dl, 0x61
mov byte [esp + eax + 0x3c], dl
dec eax
jmp 0x409d9b
cmp esi, 1
jne 0x409d0e
lea esi, [eax + 0x5adbf6]
lea ebx, [eax + ecx]
add ebx, 0x5adbf6
and esi, ecx
add esi, esi
sub ebx, esi
sub bl, cl
add bl, 0x46
mov dword [esp], ebx
lea esi, [eax + 0x5bb765]
lea ebx, [eax + ecx]
add ebx, 0x5bb765
and esi, ecx
add esi, esi
sub ebx, esi
add bl, 0x3d
mov byte [esp + eax + 0x3c], bl
movzx esi, bl
not edx
add eax, edx
sub eax, esi
mov edx, ebp
lea esi, [eax + 0x5c92d4]
lea ebx, [eax + ecx]
add ebx, 0x5c92d4
and esi, ecx
add esi, esi
sub ebx, esi
add bl, 0x34
mov byte [esp + eax + 0x3c], bl
sub eax, edi
inc edi
movzx ecx, byte [esp + eax + 0x3a]
add eax, 0xfffffffe
mov ebx, dword [esp]
jmp 0x409d95
add edx, 3
mov edi, edx
cmp ebp, edx
jb 0x409e5c
mov edx, edi
add edx, 2
jb 0x409d7a
lea edx, [edi + 4]
add edi, 6
cmp edx, edi
jae 0x409cf8
jmp 0x409e5c
cmp edi, ebp
jbe 0x409d5b
lea edi, [eax + 0x592518]
lea ebx, [eax + ecx]
add ebx, 0x592518
and edi, ecx
add edi, edi
sub ebx, edi
add bl, cl
add bl, 0x58
mov ebp, ebx
lea edi, [eax + 0x5a0087]
lea ebx, [eax + ecx]
add ebx, 0x5a0087
and edi, ecx
add edi, edi
sub ebx, edi
mov ecx, ebp
add bl, cl
add bl, 0x4f
mov byte [esp + eax + 0x3c], bl
mov ebx, ebp
movzx ecx, bl
not ecx
add eax, ecx
mov edi, esi
jmp 0x409d99
jne 0x409dac
lea edx, [eax + 0x360051]
lea ebx, [eax + ecx]
add ebx, 0x360051
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xc9
jmp 0x409c4d
lea edx, [edi + 1]
lea esi, [eax + 0x8249e8]
lea ebx, [eax + ecx]
add ebx, 0x8249e8
and esi, ecx
add esi, esi
sub ebx, esi
add bl, 0xa8
add ecx, edx
add eax, ecx
mov ebp, edx
inc eax
mov edx, ebp
cmp eax, 0x24
jb 0x409b90
jmp 0x409e7f
mov dword [esp], ebx
lea ebx, [edx + 2]
cmp edi, ebx
jne 0x409dd3
lea edx, [eax + 0x37b72f]
lea ebx, [eax + ecx]
add ebx, 0x37b72f
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xb7
jmp 0x409c69
test edi, edi
mov ebx, dword [esp]
jne 0x409d12
cmp edx, 0xfffffffe
je 0x409e0b
test edx, edx
je 0x409e30
cmp edx, 0xffffffff
jne 0x409e3d
lea edx, [eax + 0x48006c]
lea ebx, [eax + ecx]
add ebx, 0x48006c
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xc
xor edi, edi
xor edx, edx
dec edx
jmp 0x409d95
lea edx, [eax + 0x49b74a]
lea ebx, [eax + ecx]
add ebx, 0x49b74a
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xfa
mov dword [esp], ebx
mov edx, 0xfffffffe
jmp 0x409cbc
mov byte [esp + eax + 0x3c], bl
xor edi, edi
xor ebp, ebp
jmp 0x409d9b
lea edx, [eax + 0x576e3a]
lea ebx, [eax + ecx]
add ebx, 0x576e3a
and edx, ecx
add edx, edx
sub ebx, edx
add bl, bl
add bl, 0xd4
jmp 0x409c4d
lea ebx, [eax + ecx]
add ebx, 0x7049cd
add eax, 0x7049cd
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0x65
jmp 0x409b80
mov eax, 0xd44a03
jmp 0x409e88
xor eax, eax
jmp 0x409e88
mov eax, 0x1536e94
lea esi, [esp + eax]
add esi, 0x3c
xor eax, eax
mov dword [0x478438], eax
mov dword [0x478448], eax
mov dword [0x47844c], 0xf
mov byte [0x478438], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478438
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473280]
movups xmmword [esp + 0x3e0], xmm0
mov dword [esp + 0x3f0], 0xcb6e6844
xorps xmm0, xmm0
movups xmmword [esp + 0x3f4], xmm0
mov word [esp + 0x404], 0
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, esi
mov esi, dword [eax]
xor ebp, ebp
mov eax, 0x8b8254
cmp ecx, ebp
ja 0x40a740
mov dword [esp + 0x14], ebx
movzx edi, byte [esp + ebp + 0x3e0]
lea eax, [ebp + 0x79e45224]
lea ebx, [edi + ebp]
add ebx, 0x79e45224
and eax, edi
add eax, eax
sub ebx, eax
add bl, 4
lea eax, [ebp - 0x45430c]
mov dword [esp + 0xc], ecx
lea ecx, [edi + ebp]
add ecx, 0xffbabcf4
and eax, edi
add eax, eax
sub ecx, eax
add cl, 0x54
mov dword [esp + 4], ecx
lea eax, [ebp + 0x3b2ff544]
lea edx, [edi + ebp]
add edx, 0x3b2ff544
and eax, edi
add eax, eax
sub edx, eax
add dl, 0x24
mov dword [esp + 0x10], edx
mov ecx, dword [esp + 0xc]
lea eax, [ebp + 0x476750fc]
and eax, edi
add eax, eax
mov dword [esp + 8], edi
lea edx, [edi + ebp]
add edx, 0x476750fc
sub edx, eax
add dl, 0x1c
mov dword [esp + 0x1c], edx
mov dword [esp], ebp
mov dword [esp + 0x18], ebx
lea edi, [esi + 1]
mov eax, ebx
cmp ecx, edi
mov ebx, dword [esp + 0x10]
jb 0x409fd4
je 0x40a3cc
lea eax, [esi + 3]
cmp ecx, eax
je 0x40a3ea
lea eax, [esi + 5]
cmp ecx, eax
je 0x40a46f
lea ebp, [esi + 7]
mov eax, dword [esp + 0x14]
cmp ecx, ebp
mov ebp, dword [esp]
je 0x40a492
cmp esi, ebp
ja 0x40a737
lea ebp, [esi + 2]
mov edx, dword [esp + 4]
mov ah, dl
cmp ecx, ebp
jb 0x40a014
lea edi, [esi + 1]
cmp edi, ecx
je 0x40a2b7
cmp ebp, ecx
je 0x40a302
lea edi, [esi + 3]
cmp edi, ecx
je 0x40a355
lea edi, [esi + 5]
mov ah, al
cmp edi, ecx
je 0x40a382
lea edi, [esi + ecx]
cmp edi, dword [esp]
jbe 0x40a0d8
lea eax, [esi + 3]
cmp eax, ecx
je 0x40a15b
lea edi, [esi + 1]
cmp edi, ecx
mov ebp, dword [esp]
je 0x40a186
lea eax, [esi + 0x5a]
cmp eax, ecx
je 0x40a1ad
lea eax, [esi + 0x7a]
cmp eax, ecx
je 0x40a1d0
lea eax, [esi + 0x1000]
cmp eax, ecx
je 0x40a212
lea eax, [esi + 0x3e8]
cmp eax, ecx
je 0x40a233
lea eax, [esi + 0x80]
cmp eax, ecx
je 0x40a254
lea eax, [esi + 0x42]
cmp eax, ecx
je 0x40a275
lea eax, [esi + 0x28]
cmp eax, ecx
je 0x40a296
lea ecx, [esi + 8]
lea eax, [esi + 0x16]
cmp ecx, eax
jb 0x40a716
lea eax, [esi + 0x14]
cmp ecx, eax
jb 0x40a6ef
lea eax, [esi + 0x12]
cmp ecx, eax
jb 0x40a0b9
add esi, 0x11
mov eax, ebx
jmp 0x409fd4
lea ecx, [esi + 8]
add esi, 0x11
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
cmp ecx, ebp
mov ebx, dword [esp + 0x18]
jbe 0x409f99
jmp 0x40cc07
lea edx, [esi + 8]
cmp ecx, edx
jae 0x40a32a
lea eax, [esi + ecx]
add eax, 0xffffffe0
test eax, eax
je 0x40a4c4
lea eax, [esi + 9]
cmp ecx, eax
jbe 0x40a4f1
mov edi, dword [esp]
lea edx, [edi + 0xb679294]
mov ebx, dword [esp + 8]
add edi, ebx
add edi, 0xb679294
and edx, ebx
mov ebx, edi
add edx, edx
sub ebx, edx
add bl, 0xf4
cmp ecx, 0x3f
ja 0x40a547
lea edx, [esi + 0x10]
cmp ecx, edx
jbe 0x40a5c6
mov ebp, dword [esp]
lea eax, [ebp + 0xb224f88]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xb224f88
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x48
mov byte [esp + ebp + 0x3e0], bl
jmp 0x40a4b5
mov dword [esp + 0xc], ecx
mov ebp, dword [esp]
lea eax, [ebp + 0x601b4b78]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x601b4b78
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xb8
inc esi
mov edi, esi
jmp 0x40a2dc
lea eax, [ebp + 0x53e3efc0]
mov edx, ecx
mov ecx, dword [esp + 8]
lea ebx, [ecx + ebp]
add ebx, 0x53e3efc0
and eax, ecx
mov ecx, edx
add eax, eax
sub ebx, eax
add bl, 0xc0
mov edi, edx
jmp 0x40a4b2
lea eax, [ebp + 0x47ac9408]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x47ac9408
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xc8
mov edi, esi
jmp 0x40a4b2
lea eax, [ebp + 0x3b753850]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x3b753850
mov edi, edx
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xd0
lea edx, [ebp - 0x15a4f3c]
lea eax, [edi + ebp]
add eax, 0xfea5b0c4
and edx, edi
add edx, edx
sub eax, edx
add al, bl
add al, 0xa4
mov byte [esp + ebp + 0x3e0], al
jmp 0x40a374
lea eax, [ebp + 0x2f3ddc98]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x2f3ddc98
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xd8
jmp 0x40a374
lea eax, [ebp + 0x230680e0]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x230680e0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xe0
jmp 0x40a376
lea eax, [ebp + 0x16cf2528]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x16cf2528
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xe8
jmp 0x40a406
lea eax, [ebp + 0xa97c970]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xa97c970
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xf0
jmp 0x40a43a
lea eax, [ebp - 0x19f9248]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xfe606db8
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xf8
jmp 0x40a469
mov ebp, dword [esp]
lea eax, [ebp - 0xc7c9ec4]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xf383613c
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x5c
mov dword [esp + 0xc], ecx
mov edi, ecx
lea ecx, [ebp + 0xadd0c7c]
lea eax, [edx + ebp]
add eax, 0xadd0c7c
and ecx, edx
add ecx, ecx
sub eax, ecx
add al, 0x9c
mov byte [esp + ebp + 0x3e0], al
mov ecx, dword [esp + 0xc]
jmp 0x40a4b2
mov ebp, dword [esp]
lea eax, [ebp - 0x18b3fa7c]
mov edx, ecx
mov ecx, dword [esp + 8]
lea ebx, [ecx + ebp]
add ebx, 0xe74c0584
and eax, ecx
mov ecx, edx
add eax, eax
sub ebx, eax
add bl, 0x64
jmp 0x40a4b2
lea edx, [esi + 1]
cmp edx, ecx
jne 0x40a3a3
mov ebp, dword [esp]
lea eax, [ebp - 0x8a8618]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xff7579e8
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xa8
jmp 0x40a469
mov ebp, dword [esp]
lea eax, [ebp - 0x3d5a0da4]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xc2a5f25c
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x7c
add ecx, esi
movzx eax, bl
not eax
add ebp, eax
jmp 0x40a4b5
mov ebp, dword [esp]
lea eax, [ebp - 0x4991695c]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xb66e96a4
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x84
jmp 0x40a376
cmp ebp, ecx
jne 0x40a51c
mov ebp, dword [esp]
lea eax, [ebp - 0x25309940]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xdacf66c0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xc0
jmp 0x40a376
lea eax, [ebp + 0x6dacf66c]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x6dacf66c
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xc
jmp 0x40a469
lea eax, [ebp + 0x553e3efc]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x553e3efc
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x1c
mov dword [esp + 0x14], ebx
lea edx, [ebp - 0xd91aaf4]
mov ebx, dword [esp + 8]
lea eax, [ebx + ebp]
add eax, 0xf26e550c
and edx, ebx
add edx, edx
sub eax, edx
add al, 0xac
mov byte [esp + ebp + 0x3e0], al
movzx eax, al
not esi
sub ebp, eax
add ebp, esi
mov esi, edi
mov ebx, dword [esp + 0x14]
lea edx, [ebp + 0x6c52a730]
mov edi, dword [esp + 8]
lea eax, [edi + ebp]
add eax, 0x6c52a730
and edx, edi
add edx, edx
sub eax, edx
add al, 0xb0
mov byte [esp + ebp + 0x3e0], al
sub ebp, ecx
inc ecx
movzx edx, byte [esp + ebp + 0x3de]
add ebp, 0xfffffffe
add edx, esi
add ebp, edx
jmp 0x40a4b5
lea eax, [ebp + 0x30982bd4]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x30982bd4
mov edi, edx
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x34
jmp 0x40a1ee
lea eax, [ebp + 0x18297464]
mov edx, ecx
mov ecx, dword [esp + 8]
lea ebx, [ecx + ebp]
add ebx, 0x18297464
and eax, ecx
mov ecx, edx
add eax, eax
sub ebx, eax
add bl, 0x44
dec ebp
mov esi, edi
inc ebp
cmp ebp, 0x26
jb 0x409f01
jmp 0x40a73e
mov ebp, dword [esp]
lea eax, [ebp + 0x788a02e8]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x788a02e8
and eax, edx
add eax, eax
sub ebx, eax
sub bl, dl
add bl, 0xa8
mov dword [esp + 0x14], ebx
lea edi, [esi + 1]
jmp 0x40a40a
lea edx, [esi + 1]
cmp edx, ecx
jne 0x40a56f
mov ebp, dword [esp]
lea eax, [ebp - 0xcfc924]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xff3036dc
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xfc
jmp 0x40a2d6
lea edx, [esi + 3]
cmp edx, ecx
jne 0x40a59a
mov ebp, dword [esp]
lea eax, [ebp - 0x3167f4f8]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xce980b08
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xc8
jmp 0x40a374
mov ebp, dword [esp]
lea eax, [ebp - 0x7b3ea160]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0x84c15ea0
and eax, edx
add eax, eax
sub ebx, eax
mov edi, edx
add bl, dl
add bl, 0xa0
jmp 0x40a1ee
lea edx, [esi + 3]
cmp edx, ecx
jne 0x40a5f1
mov ebp, dword [esp]
lea eax, [ebp - 0x193e8094]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xe6c17f6c
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0xc
jmp 0x40a1c9
lea edx, [esi + 5]
mov al, ah
mov dword [esp + 0x18], eax
cmp edx, ecx
jne 0x40a0e3
mov ebp, dword [esp]
lea eax, [ebp - 0x3d9f50b0]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xc260af50
jmp 0x40a1e3
lea edi, [esi + 1]
cmp edi, ecx
mov edx, dword [esp + 8]
jne 0x40a621
mov ebp, dword [esp]
lea eax, [ebp - 0x1150c30]
lea ebx, [edx + ebp]
add ebx, 0xfeeaf3d0
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x50
jmp 0x40a469
cmp ebp, ecx
mov ebx, dword [esp + 0x18]
jne 0x40a11c
mov ebp, dword [esp]
lea eax, [ebp - 0x3de493bc]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xc21b6c44
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x24
jmp 0x40a376
cmp ebp, ecx
jne 0x40a645
mov ebp, dword [esp]
lea eax, [ebp - 0x1983c3a0]
lea ebx, [edx + ebp]
add ebx, 0xe67c3c60
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x60
jmp 0x40a406
lea edx, [esi + 3]
cmp edx, ecx
mov ebp, dword [esp]
jne 0x40a670
lea eax, [ebp - 0x25bb1f58]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xda44e0a8
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x68
jmp 0x40a376
lea edx, [esi + 6]
cmp edx, ecx
jne 0x40a69a
lea eax, [ebp - 0x3e29d6c8]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xc1d62938
mov edi, edx
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x78
jmp 0x40a1ee
lea edx, [esi + 7]
cmp edx, ecx
jne 0x40a6c2
lea eax, [ebp - 0x4a613280]
mov edx, dword [esp + 8]
lea ebx, [edx + ebp]
add ebx, 0xb59ecd80
and eax, edx
add eax, eax
sub ebx, eax
xor bl, 0x80
jmp 0x40a1c9
cmp eax, ecx
mov edx, dword [esp + 8]
jne 0x40a14f
mov dword [esp + 0xc], ecx
lea eax, [ebp - 0x62cfe9f0]
lea ebx, [edx + ebp]
add ebx, 0x9d301610
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x90
jmp 0x40a2dc
mov eax, dword [esp + 8]
lea ebx, [eax + ebp]
add ebx, 0x539eacb4
add ebp, 0x539eacb4
and ebp, eax
add ebp, ebp
sub ebx, ebp
add bl, 0x14
lea ecx, [esi + 8]
add esi, 0x11
jmp 0x409eff
mov eax, dword [esp + 8]
lea ebx, [eax + ebp]
add ebx, 0x5fd6086c
add ebp, 0x5fd6086c
and ebp, eax
add ebp, ebp
sub ebx, ebp
add bl, 0xc
jmp 0x409eef
mov eax, 0x1673030
jmp 0x40a740
xor eax, eax
lea esi, [esp + eax]
add esi, 0x3e0
xor edi, edi
mov dword [0x478450], edi
mov dword [0x478460], edi
mov dword [0x478464], 0xf
mov byte [0x478450], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478450
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473290]
movups xmmword [esp + 0x1e4], xmm0
mov dword [esp + 0x1f4], 0x1b425e43
mov dword [esp + 0x1f8], 0x584c5e7e
mov word [esp + 0x1fc], 0x3d62
mov dword [esp + 0x202], edi
mov dword [esp + 0x1fe], edi
mov dword [esp + 0x206], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ebp, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x40ad87
movzx edx, byte [esp + eax + 0x1e4]
lea edi, [ebp + 1]
cmp esi, edi
jae 0x40a86d
lea ecx, [eax + 0x7dec5425]
lea ebx, [eax + edx]
add ebx, 0x7dec5425
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xfd
cmp ebp, eax
ja 0x40ad92
mov dword [esp], ebp
add ebp, 2
cmp esi, ebp
jae 0x40a8b4
lea ecx, [eax + 0x5462e709]
lea ebx, [eax + edx]
add ebx, 0x5462e709
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc1
mov dword [esp + 4], edi
mov ecx, dword [esp]
lea edi, [esi + ecx]
mov dword [esp + 0xc], edi
cmp edi, eax
jbe 0x40a8f8
cmp esi, ebp
jne 0x40a9c3
lea ecx, [eax + 0x133d787a]
lea ebx, [eax + edx]
add ebx, 0x133d787a
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xaa
jmp 0x40ac54
jne 0x40a88c
lea ecx, [eax + 0x79c4fc6f]
lea ebx, [eax + edx]
add ebx, 0x79c4fc6f
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf7
jmp 0x40ab12
lea ecx, [ebp + 2]
cmp esi, ecx
jne 0x40a976
lea ecx, [eax + 0x759da4b9]
lea ebx, [eax + edx]
add ebx, 0x759da4b9
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf1
jmp 0x40aae5
cmp esi, edi
jne 0x40a99e
lea ecx, [eax + 0x503b8f53]
lea ebx, [eax + edx]
add ebx, 0x503b8f53
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xbb
lea ebp, [eax - 0x55ea251d]
lea ecx, [edx + eax]
add ecx, 0xaa15dae3
and ebp, edx
add ebp, ebp
sub ecx, ebp
add cl, 0xcb
mov byte [esp + eax + 0x1e4], cl
jmp 0x40ac57
add ecx, 8
cmp esi, ecx
jae 0x40a9ee
lea ecx, [eax + 0x7dec5425]
lea ebx, [eax + edx]
add ebx, 0x7dec5425
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xfd
mov edi, dword [esp + 4]
cmp dword [esp + 0xc], 0x2a
jne 0x40aa71
lea ecx, [eax + 0x23dad752]
lea ebx, [eax + edx]
add ebx, 0x23dad752
and ecx, edx
add ecx, ecx
sub ebx, ecx
sub bl, dl
add bl, 0xc2
lea ebp, [eax - 0x5e38d489]
lea ecx, [eax + edx]
add ecx, 0xa1c72b77
and ebp, edx
add ebp, ebp
sub ecx, ebp
add cl, 0xbf
mov byte [esp + eax + 0x1e4], cl
movzx ecx, cl
mov ebp, dword [esp]
not ebp
add eax, ebp
sub eax, ecx
mov ebp, edi
jmp 0x40aae5
lea ecx, [ebp + 3]
cmp esi, ecx
jne 0x40aa1a
lea ecx, [eax + 0x6d4ef54d]
lea ebx, [eax + edx]
add ebx, 0x6d4ef54d
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe5
jmp 0x40ac29
cmp esi, ebp
jne 0x40aa46
lea ecx, [eax + 0x4c14379d]
lea ebx, [eax + edx]
add ebx, 0x4c14379d
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb5
jmp 0x40ac57
mov ebp, dword [esp]
lea ecx, [ebp + 5]
cmp esi, ecx
jne 0x40aa96
lea ecx, [eax + 0xf1620c4]
lea ebx, [eax + edx]
add ebx, 0xf1620c4
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xa4
jmp 0x40ac02
mov edi, dword [esp + 4]
cmp esi, edi
jne 0x40aac2
lea ecx, [eax - 0x573a31ee]
lea ebx, [eax + edx]
add ebx, 0xa8c5ce12
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x82
mov ebp, dword [esp]
jmp 0x40ab12
lea ecx, [ebp + 5]
cmp esi, ecx
jne 0x40ab1b
lea ecx, [eax + 0x650045e1]
lea ebx, [eax + edx]
add ebx, 0x650045e1
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd9
add esi, ebp
mov edi, esi
jmp 0x40ac06
mov ecx, dword [esp]
add ecx, 3
cmp esi, ecx
jne 0x40ab45
lea ecx, [eax + 0x47ecdfe7]
lea ebx, [eax + edx]
add ebx, 0x47ecdfe7
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xaf
jmp 0x40ac54
cmp esi, edi
jne 0x40ab73
lea ecx, [eax - 0x2d74ae5]
lea ebx, [eax + edx]
add ebx, 0xfd28b51b
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x43
jmp 0x40a8d4
lea ecx, [ebp + 9]
cmp esi, ecx
jne 0x40ab94
lea ecx, [eax + 0xaeec90e]
lea ebx, [eax + edx]
add ebx, 0xaeec90e
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x9e
mov esi, dword [esp + 0xc]
jmp 0x40ac29
cmp esi, ebp
jne 0x40abb9
lea ecx, [eax - 0x5b6189a4]
lea ebx, [eax + edx]
add ebx, 0xa49e765c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x7c
mov ebp, dword [esp]
lea edi, [eax + 0x1fb37f9c]
lea ecx, [eax + edx]
add ecx, 0x1fb37f9c
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0xbc
mov byte [esp + eax + 0x1e4], cl
sub eax, esi
inc esi
movzx edx, byte [esp + eax + 0x1e2]
add eax, 0xfffffffe
add edx, ebp
add eax, edx
jmp 0x40ac5a
lea ecx, [ebp + 7]
cmp esi, ecx
jne 0x40a804
lea ecx, [eax + 0x60d8ee2b]
lea ebx, [eax + edx]
add ebx, 0x60d8ee2b
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd3
mov edi, ebp
jmp 0x40ac57
mov ecx, dword [esp]
add ecx, 5
cmp esi, ecx
jne 0x40a832
lea ecx, [eax + 0x3b76d8c5]
lea ebx, [eax + edx]
add ebx, 0x3b76d8c5
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x9d
mov ebp, dword [esp]
jmp 0x40ac29
cmp esi, ebp
jne 0x40abe0
lea ecx, [eax - 0xb25fa51]
lea ebx, [eax + edx]
add ebx, 0xf4da05af
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x37
jmp 0x40ac54
lea ecx, [ebp + 0x20]
cmp esi, ecx
jne 0x40ad6b
lea ecx, [eax + 0x6c77158]
lea ebx, [eax + edx]
add ebx, 0x6c77158
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x98
jmp 0x40ac29
mov ecx, dword [esp]
add ecx, 5
cmp esi, ecx
jne 0x40ac32
lea ecx, [eax - 0x6bfee87c]
lea ebx, [eax + edx]
add ebx, 0x94011784
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x64
mov ebp, dword [esp]
jmp 0x40ac02
mov ebp, dword [esp]
lea ecx, [ebp + 3]
cmp esi, ecx
jne 0x40ac69
lea ecx, [eax - 0xf4d5207]
lea ebx, [eax + edx]
add ebx, 0xf0b2adf9
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x31
mov edi, dword [esp + 0xc]
lea esi, [eax - 0x5a117cd3]
lea ecx, [edx + eax]
add ecx, 0xa5ee832d
and esi, edx
add esi, esi
sub ecx, esi
add cl, bl
add cl, 0xc5
mov byte [esp + eax + 0x1e4], cl
mov esi, edi
movzx ecx, bl
not ecx
add eax, ecx
jmp 0x40ac5a
mov ecx, dword [esp]
add ecx, 3
cmp esi, ecx
jne 0x40ac8a
lea ecx, [eax - 0x70264032]
lea ebx, [eax + edx]
add ebx, 0x8fd9bfce
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x5e
mov edi, dword [esp]
dec eax
mov ebp, edi
inc eax
cmp eax, 0x26
jb 0x40a7d1
jmp 0x40ad8e
lea ecx, [ebp + 6]
cmp esi, ecx
jne 0x40acb5
lea ecx, [eax - 0x179c0173]
lea ebx, [eax + edx]
add ebx, 0xe863fe8d
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x25
jmp 0x40ac29
mov ecx, dword [esp]
add ecx, 6
cmp esi, ecx
jne 0x40a91f
lea ecx, [eax - 0x7874ef9e]
lea ebx, [eax + edx]
add ebx, 0x878b1062
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x52
jmp 0x40a8d4
lea ecx, [ebp + 4]
cmp esi, ecx
jne 0x40acd9
lea ecx, [eax - 0x24120895]
lea ebx, [eax + edx]
add ebx, 0xdbedf76b
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x13
jmp 0x40ab12
jbe 0x40ad04
lea ecx, [eax + 0x55b2f3da]
lea ebx, [eax + edx]
add ebx, 0x55b2f3da
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xa
cmp ebp, 9
ja 0x40ad28
mov byte [esp + eax + 0x1e4], bl
jmp 0x40ac5a
lea ecx, [ebp + 5]
cmp esi, ecx
jne 0x40ad47
lea ecx, [eax + 0x40ee3d4c]
lea ebx, [eax + edx]
add ebx, 0x40ee3d4c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xec
jmp 0x40aab9
lea ecx, [eax + 0x2c2986be]
lea ebx, [eax + edx]
add ebx, 0x2c2986be
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, bl
add bl, 0x9c
jmp 0x40a8d4
lea ecx, [ebp + 7]
cmp esi, ecx
jne 0x40acf3
lea ecx, [eax + 0x3050de74]
lea ebx, [eax + edx]
add ebx, 0x3050de74
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd4
jmp 0x40a8d4
lea ebx, [eax + edx]
add ebx, 0x6fef0eef
add eax, 0x6fef0eef
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x77
jmp 0x40a7c1
mov eax, 0x134dd01
jmp 0x40ad97
xor eax, eax
jmp 0x40ad97
mov eax, 0x14888dc
lea esi, [esp + eax]
add esi, 0x1e4
xor ebx, ebx
mov dword [0x478468], ebx
mov dword [0x478478], ebx
mov dword [0x47847c], 0xf
mov byte [0x478468], bl
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478468
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4732a0]
movups xmmword [esp + 0x20], xmm0
mov dword [esp + 0x34], ebx
mov dword [esp + 0x30], ebx
mov byte [esp + 0x38], bl
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x40b0be
mov bl, byte [esp + eax + 0x20]
movzx edi, bl
lea edx, [ecx + 1]
cmp esi, edx
jae 0x40ae35
cmp ecx, eax
ja 0x40b0c9
lea ebp, [ecx + 8]
cmp esi, ebp
jae 0x40ae6d
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x40aebb
cmp esi, edx
je 0x40aec0
jmp 0x40adeb
jne 0x40ae3e
mov edx, ecx
jmp 0x40af19
lea ebp, [ecx + 3]
cmp esi, ebp
je 0x40aec0
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x40af5a
lea ebx, [eax + 0x52c16e77]
lea edx, [eax + edi]
add edx, 0x52c16e77
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xbf
jmp 0x40b01c
cmp esi, edx
mov dword [esp], esi
je 0x40af29
lea esi, [ecx + 2]
cmp dword [esp], esi
mov esi, dword [esp]
je 0x40af48
mov dword [esp + 4], edi
mov edi, esi
lea esi, [ecx + 5]
cmp edi, esi
jne 0x40afd7
lea esi, [eax + 0x2f6fea5f]
mov ebx, dword [esp + 4]
lea edx, [eax + ebx]
add edx, 0x2f6fea5f
and esi, ebx
add esi, esi
sub edx, esi
add dl, 0x67
mov esi, edi
jmp 0x40b01c
cmp ebp, 5
jne 0x40af22
mov dword [esp], edx
mov edx, esi
lea esi, [eax + 0x2d349315]
lea ebx, [eax + edi]
add ebx, 0x2d349315
and esi, edi
add esi, esi
sub ebx, esi
add bl, 0x6d
mov byte [esp + eax + 0x20], bl
movzx esi, bl
not ecx
add ecx, eax
mov ebx, ecx
sub ebx, esi
lea ebp, [ebx - 0x1eeed26c]
lea eax, [ebx + edi]
add eax, 0xe1112d94
and ebp, edi
add ebp, ebp
sub eax, ebp
add al, 0xf4
mov byte [esp + ebx + 0x20], al
add esi, edx
inc edx
sub ecx, esi
mov esi, edx
mov edx, dword [esp]
mov bl, byte [esp + ecx + 0x1e]
add ecx, 0xfffffffe
mov eax, ecx
movzx ecx, bl
add ecx, edx
add eax, ecx
jmp 0x40af49
cmp esi, edx
mov dword [esp], esi
jne 0x40af7e
lea esi, [eax + 0x5dc22919]
lea ecx, [edi + eax]
add ecx, 0x5dc22919
and esi, edi
add esi, esi
sub ecx, esi
add cl, 0x51
mov byte [esp + eax + 0x20], cl
mov esi, dword [esp]
dec eax
mov ecx, edx
inc eax
cmp eax, 0x19
jb 0x40adfb
jmp 0x40b0c5
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x40af8e
lea ebx, [eax - 0x45855c8b]
lea edx, [eax + edi]
add edx, 0xba7aa375
and ebx, edi
add ebx, ebx
sub edx, ebx
add dl, 0xcd
jmp 0x40b01a
lea esi, [ecx + 2]
mov ebp, dword [esp]
cmp ebp, esi
mov esi, ebp
jne 0x40aff5
mov edx, ecx
jmp 0x40af48
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x40b028
mov ebp, edi
mov edi, esi
lea esi, [eax + 0x2233d873]
lea edx, [eax + ebp]
add edx, 0x2233d873
and esi, ebp
add esi, esi
sub edx, esi
add dl, 0xdb
lea esi, [eax - 0x3a84a1e9]
lea ebx, [eax + ebp]
add ebx, 0xc57b5e17
and esi, ebp
add esi, esi
sub ebx, esi
mov esi, edi
add bl, dl
add bl, 0x5f
mov byte [esp + eax + 0x20], bl
jmp 0x40b01a
lea esi, [ecx + 3]
cmp edi, esi
mov esi, edi
mov edi, dword [esp + 4]
je 0x40aec0
cmp esi, ebp
jne 0x40ae20
jmp 0x40ae37
mov ebp, edi
mov edi, esi
lea esi, [ecx + 3]
cmp edi, esi
jne 0x40b038
lea esi, [eax - 0x1dd126c7]
lea edx, [eax + ebp]
add edx, 0xe22ed939
and esi, ebp
add esi, esi
sub edx, esi
add dl, 0x71
mov esi, edi
add esi, ecx
movzx edx, dl
not edx
add eax, edx
jmp 0x40af4b
lea ebp, [ecx + 6]
cmp esi, ebp
jne 0x40ae11
jmp 0x40af48
lea esi, [ecx + 6]
cmp edi, esi
mov esi, edi
je 0x40ae37
mov edi, esi
lea esi, [ecx + 0x10]
cmp edi, esi
jbe 0x40b071
lea esi, [eax - 0x63568352]
lea edx, [eax + ebp]
add edx, 0x9ca97cae
and esi, ebp
add esi, esi
sub edx, esi
add dl, 0x3e
mov byte [esp + eax + 0x20], dl
mov esi, edi
jmp 0x40af4b
lea esi, [ecx + 5]
cmp edi, esi
jne 0x40b092
lea esi, [eax - 0x5cb87a5c]
lea edx, [eax + ebp]
add edx, 0xa34785a4
and esi, ebp
add esi, esi
sub edx, esi
add dl, 0x84
jmp 0x40b018
lea esi, [ecx + 9]
cmp edi, esi
mov edi, ebp
je 0x40af29
mov ebx, edi
mov edi, dword [esp]
lea esi, [eax - 0x4c236581]
lea edx, [eax + ebx]
add edx, 0xb3dc9a7f
and esi, ebx
add esi, esi
sub edx, esi
add dl, 0x87
jmp 0x40b066
mov eax, 0x5467d3
jmp 0x40b0ce
xor eax, eax
jmp 0x40b0ce
mov eax, 0x177cd54
lea esi, [esp + eax]
add esi, 0x20
xor edi, edi
mov dword [0x478480], edi
mov dword [0x478490], edi
mov dword [0x478494], 0xf
mov byte [0x478480], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478480
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4732b0]
movups xmmword [esp + 0x534], xmm0
mov dword [esp + 0x544], 0x2340baaa
xorps xmm0, xmm0
movups xmmword [esp + 0x548], xmm0
mov dword [esp + 0x55b], edi
mov dword [esp + 0x557], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x40b48a
mov bl, byte [esp + eax + 0x534]
movzx edx, bl
lea edi, [ecx + 1]
cmp esi, edi
jae 0x40b1b1
cmp ecx, eax
ja 0x40b495
lea ebp, [ecx + 0xa]
cmp esi, ebp
jae 0x40b1c6
lea ebp, [esi + ecx]
cmp ebp, eax
jbe 0x40b1f2
lea ebx, [ecx + 5]
cmp esi, ebx
je 0x40b1ce
lea edi, [ecx + 4]
cmp esi, edi
je 0x40b39b
lea edi, [ecx + 0x28]
cmp esi, edi
jne 0x40b3d3
lea edi, [eax + 0x6267aa94]
lea ebx, [eax + edx]
add ebx, 0x6267aa94
and edi, edx
mov byte [esp], 0xf4
jmp 0x40b325
je 0x40b253
lea ebp, [ecx + 2]
cmp esi, ebp
jne 0x40b25d
mov edi, ecx
jmp 0x40b225
cmp esi, edi
jne 0x40b285
lea ebx, [eax + 0x4c57a27f]
lea ecx, [eax + edx]
add ecx, 0x4c57a27f
and ebx, edx
add ebx, ebx
sub ecx, ebx
add cl, 0x87
mov byte [esp + eax + 0x534], cl
jmp 0x40b39d
cmp ebp, 4
jne 0x40b2b2
lea ebp, [eax - 0x2305e4dd]
lea ebx, [eax + edx]
add ebx, 0xdcfa1b23
and ebp, edx
add ebp, ebp
sub ebx, ebp
add bl, 0xb
mov byte [esp + eax + 0x534], bl
movzx ebx, bl
not ecx
add ecx, eax
sub ecx, ebx
mov eax, ecx
lea ebx, [eax + 0x4122b94c]
lea ecx, [eax + edx]
add ecx, 0x4122b94c
and ebx, edx
add ebx, ebx
sub ecx, ebx
add cl, 0xec
mov byte [esp + eax + 0x534], cl
sub eax, esi
inc esi
mov bl, byte [esp + eax + 0x532]
add eax, 0xfffffffe
mov ecx, edi
movzx edx, bl
add edx, ecx
jmp 0x40b35b
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x40b305
lea edi, [eax + 0x4dbecbc3]
lea ebx, [eax + edx]
add ebx, 0x4dbecbc3
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xab
jmp 0x40b354
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x40b39d
lea ebp, [ecx + 4]
cmp esi, ebp
jne 0x40b3af
lea edi, [eax + 0x5899eaa5]
lea ebx, [eax + edx]
add ebx, 0x5899eaa5
and edi, edx
mov byte [esp], 0x7d
jmp 0x40b325
lea ebp, [ecx + 9]
cmp esi, ebp
jbe 0x40b35f
lea ebp, [eax - 0x2252503b]
mov dword [esp + 4], edx
mov edx, dword [esp + 4]
add edx, eax
add edx, 0xddadafc5
mov dword [esp], edx
and ebp, dword [esp + 4]
add ebp, ebp
sub dword [esp], ebp
mov edx, dword [esp]
add dl, 0x9d
mov ebp, edx
cmp esi, edi
je 0x40b253
lea ebx, [ecx + 2]
cmp esi, ebx
jne 0x40b3f7
mov edi, ecx
mov edx, dword [esp + 4]
jmp 0x40b225
lea ebp, [ecx + 5]
cmp esi, ebp
jne 0x40b390
lea edi, [eax + 0x16100815]
lea ebx, [eax + edx]
add ebx, 0x16100815
and edi, edx
mov byte [esp], 0x6d
add edi, edi
sub ebx, edi
add bl, byte [esp]
mov dword [esp], ebx
lea edi, [eax + 0x14a8ded1]
lea ebx, [edx + eax]
add ebx, 0x14a8ded1
and edi, edx
add edi, edi
sub ebx, edi
add bl, byte [esp]
add bl, 0x49
mov byte [esp + eax + 0x534], bl
mov ebx, dword [esp]
add esi, ecx
movzx edx, bl
not edx
add eax, edx
jmp 0x40b3a0
cmp esi, edi
je 0x40b1ce
lea ebp, [ecx + 2]
cmp esi, ebp
je 0x40b39b
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x40b450
lea edi, [eax - 0x10d5ef3]
lea ebx, [eax + edx]
add ebx, 0xfef2a10d
and edi, edx
mov byte [esp], 0xa5
jmp 0x40b325
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x40b164
mov edi, ecx
dec eax
mov ecx, edi
inc eax
cmp eax, 0x2b
jb 0x40b14b
jmp 0x40b491
lea ebp, [ecx + 3]
cmp esi, ebp
jne 0x40b173
lea edi, [eax - 0x16c39cb7]
lea ebx, [eax + edx]
add ebx, 0xe93c6349
and edi, edx
add edi, edi
sub ebx, edi
inc bl
jmp 0x40b356
lea edi, [ecx + 0x20]
cmp esi, edi
jne 0x40b41c
lea edi, [eax - 0xcf5dcc8]
lea ebx, [eax + edx]
add ebx, 0xf30a2338
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0x78
jmp 0x40b356
lea ebx, [ecx + 3]
cmp esi, ebx
mov edx, dword [esp + 4]
jne 0x40b42e
lea edi, [eax - 0x3915ecf2]
lea ebx, [eax + edx]
add ebx, 0xc6ea130e
and edi, edx
mov byte [esp], 0x9e
jmp 0x40b325
lea ebx, [ecx + 0x10]
mov edi, ecx
cmp esi, ebx
je 0x40b225
jmp 0x40b13b
lea ebx, [ecx + 5]
cmp esi, ebx
je 0x40b39b
cmp ecx, 0x1f
ja 0x40b1ce
mov edx, ebp
mov byte [esp + eax + 0x534], dl
jmp 0x40b3a0
lea ebp, [ecx + 4]
cmp esi, ebp
je 0x40b1fb
lea ebp, [eax + 0x64289e29]
mov dword [esp + 0xc], ebp
lea ebp, [eax + edx]
add ebp, 0x64289e29
mov dword [esp], ebp
mov dword [esp + 4], edx
mov ebp, dword [esp + 0xc]
and ebp, edx
add ebp, ebp
mov edx, dword [esp]
sub edx, ebp
add dl, 0xe1
jmp 0x40b2e5
mov eax, 0xb2e1b5
jmp 0x40b49a
xor eax, eax
jmp 0x40b49a
mov eax, 0x14a438c
lea esi, [esp + eax]
add esi, 0x534
xor edi, edi
mov dword [0x478498], edi
mov dword [0x4784a8], edi
mov dword [0x4784ac], 0xf
mov byte [0x478498], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x478498
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [str.arG]
movups xmmword [esp + 0x308], xmm0
movaps xmm0, xmmword [0x4732d0]
movups xmmword [esp + 0x318], xmm0
mov dword [esp + 0x329], edi
mov dword [esp + 0x325], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edi, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x40ba90
movzx edx, byte [esp + eax + 0x308]
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x40b59c
lea ecx, [eax + 0x76a48ea3]
lea ebx, [eax + edx]
add ebx, 0x76a48ea3
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x8b
cmp edi, eax
ja 0x40ba9b
lea ecx, [edi + 2]
cmp esi, ecx
jae 0x40b5bb
mov dword [esp], ecx
lea ecx, [eax - 0x44804ca1]
lea ebx, [eax + edx]
add ebx, 0xbb7fb35f
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x67
lea ecx, [esi + edi]
cmp ecx, eax
jbe 0x40b633
lea ecx, [edi + 8]
cmp esi, ecx
jne 0x40b6fe
lea ecx, [eax - 0x180198b0]
lea ebx, [eax + edx]
add ebx, 0xe7fe6750
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd0
jmp 0x40b5fe
jne 0x40b606
lea ecx, [eax + 0x63edabe9]
lea ebx, [eax + edx]
add ebx, 0x63edabe9
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xa1
jmp 0x40b7d3
cmp esi, ebp
jne 0x40b6ab
lea ecx, [eax - 0x57372f5b]
lea ebx, [eax + edx]
add ebx, 0xa8c8d0a5
and ecx, edx
mov byte [esp], 0x7d
add ecx, ecx
sub ebx, ecx
add bl, byte [esp]
lea edi, [eax - 0x43ca9c6b]
lea ecx, [edx + eax]
add ecx, 0xbc356395
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0xed
mov byte [esp + eax + 0x308], cl
dec eax
mov edi, ebp
jmp 0x40b910
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x40b6d6
mov dword [esp], esi
lea ecx, [eax + 0x5136c92f]
lea ebx, [eax + edx]
add ebx, 0x5136c92f
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb7
mov ebp, edi
jmp 0x40b7a1
lea ecx, [edi + 3]
cmp esi, ecx
jae 0x40b726
mov dword [esp + 4], ecx
lea ecx, [eax + 0x76a48ea3]
lea ebx, [eax + edx]
add ebx, 0x76a48ea3
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x8b
lea ecx, [edi + 4]
cmp esi, ecx
jbe 0x40b806
lea ecx, [eax + 0x4535fcd7]
lea ebx, [eax + edx]
add ebx, 0x4535fcd7
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x1f
cmp esi, 9
ja 0x40b8a7
cmp esi, ebp
jne 0x40b93f
lea ecx, [eax - 0x12013284]
lea ebx, [eax + edx]
add ebx, 0xedfecd7c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x9c
jmp 0x40b7d3
mov dword [esp], ecx
lea ecx, [edi + 5]
cmp esi, ecx
jne 0x40b74b
lea ecx, [eax + 0x5ded45bd]
lea ebx, [eax + edx]
add ebx, 0x5ded45bd
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd5
jmp 0x40b907
lea ecx, [edi + 6]
cmp esi, ecx
jne 0x40b7dc
lea ecx, [eax + 0x65b3e47]
lea ebx, [eax + edx]
add ebx, 0x65b3e47
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf
jmp 0x40b8e6
lea ecx, [edi + 0x20]
cmp esi, ecx
jne 0x40b828
lea ecx, [eax - 0x502640de]
lea ebx, [eax + edx]
add ebx, 0xafd9bf22
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x12
jmp 0x40b907
cmp esi, ebp
jne 0x40b850
lea ecx, [eax + 0x76ff66be]
lea ebx, [eax + edx]
add ebx, 0x76ff66be
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xce
jmp 0x40b7d3
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x40b87f
mov dword [esp], esi
lea ecx, [eax + 0x387f8049]
lea ebx, [eax + edx]
add ebx, 0x387f8049
and ecx, edx
mov byte [esp + 4], 1
add ecx, ecx
sub ebx, ecx
add bl, byte [esp + 4]
lea esi, [eax - 0x693861df]
lea ecx, [edx + eax]
add ecx, 0x96c79e21
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0x19
mov byte [esp + eax + 0x308], cl
movzx ecx, cl
not edi
add edi, eax
sub edi, ecx
mov eax, edi
lea esi, [eax + 0xd6c2cc4]
lea ecx, [eax + edx]
add ecx, 0xd6c2cc4
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0xa4
mov byte [esp + eax + 0x308], cl
mov esi, dword [esp]
sub eax, esi
inc esi
movzx edx, byte [esp + eax + 0x306]
add eax, 0xfffffffe
mov edi, ebp
add edx, edi
add eax, edx
jmp 0x40b910
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x40b542
lea ecx, [eax - 0xc5ba473]
lea ebx, [eax + edx]
add ebx, 0xf3a45b8d
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x25
mov ebp, edi
jmp 0x40b5fe
cmp esi, ebp
jne 0x40b8c3
lea ecx, [eax + 0x327f1a1d]
lea ebx, [eax + edx]
add ebx, 0x327f1a1d
and ecx, edx
mov byte [esp], 0x35
jmp 0x40b5d8
lea ecx, [edi + 4]
cmp esi, ecx
jne 0x40ba74
lea ecx, [eax - 0x62dd2398]
lea ebx, [eax + edx]
add ebx, 0x9d22dc68
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x28
jmp 0x40b909
mov dword [esp + 4], ecx
mov ecx, dword [esp]
cmp esi, ecx
jne 0x40b91f
mov dword [esp], esi
lea ecx, [eax + 0x64488404]
lea ebx, [eax + edx]
add ebx, 0x64488404
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe4
jmp 0x40b62c
lea ecx, [edi + 8]
cmp esi, ecx
jne 0x40b56c
lea ecx, [eax + 0x1311bad5]
lea ebx, [eax + edx]
add ebx, 0x1311bad5
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x2d
jmp 0x40b7d3
lea ecx, [eax + 0x32d9f238]
lea ebx, [eax + edx]
add ebx, 0x32d9f238
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, dl
add bl, 0x78
jmp 0x40b8e6
mov ecx, dword [esp]
cmp esi, ecx
jne 0x40b962
lea ecx, [eax - 0x5a58e11]
lea ebx, [eax + edx]
add ebx, 0xfa5a71ef
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x77
lea ebp, [eax - 0x56817f25]
lea ecx, [edx + eax]
add ecx, 0xa97e80db
and ebp, edx
add ebp, ebp
sub ecx, ebp
add cl, bl
add cl, 3
mov byte [esp + eax + 0x308], cl
add esi, edi
movzx ecx, bl
not ecx
add eax, ecx
inc eax
cmp eax, 0x25
jb 0x40b513
jmp 0x40ba97
cmp esi, dword [esp + 4]
jne 0x40b983
lea ecx, [eax + 0x3edabe90]
lea ebx, [eax + edx]
add ebx, 0x3edabe90
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x10
jmp 0x40b909
cmp esi, dword [esp]
jne 0x40b9a7
mov dword [esp], esi
lea ecx, [eax - 0x376ef7f8]
lea ebx, [eax + edx]
add ebx, 0xc8910808
and ecx, edx
mov byte [esp + 4], 0xc8
jmp 0x40b76f
lea ecx, [edi + 5]
cmp esi, ecx
jne 0x40b9cb
lea ecx, [eax - 0x185c70cb]
lea ebx, [eax + edx]
add ebx, 0xe7a38f35
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x8d
jmp 0x40b907
lea ecx, [edi + 4]
cmp esi, ecx
jne 0x40b9f0
lea ecx, [eax + 0x2c23dbd6]
lea ebx, [eax + edx]
add ebx, 0x2c23dbd6
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x26
jmp 0x40b907
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x40ba18
lea ecx, [eax + 0x6afe9a66]
lea ebx, [eax + edx]
add ebx, 0x6afe9a66
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x36
jmp 0x40b5fe
lea ecx, [edi + 6]
cmp esi, ecx
jne 0x40ba24
mov dword [esp], esi
lea ecx, [eax - 0x3dca363f]
lea ebx, [eax + edx]
add ebx, 0xc235c9c1
and ecx, edx
mov byte [esp + 4], 0xb9
jmp 0x40b76f
mov dword [esp + 0xc], ecx
lea ecx, [edi + 7]
cmp esi, ecx
jne 0x40ba4b
lea ecx, [eax + 0x6b61662]
lea ebx, [eax + edx]
add ebx, 0x6b61662
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x52
jmp 0x40b7ff
mov byte [esp + eax + 0x308], bl
jmp 0x40b910
cmp esi, dword [esp + 4]
jne 0x40b67d
lea ecx, [eax - 0x6337fbb3]
lea ebx, [eax + edx]
add ebx, 0x9cc8044d
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe5
jmp 0x40b7d3
lea ecx, [edi + 5]
cmp esi, ecx
mov ecx, dword [esp + 0xc]
jne 0x40b65d
lea ecx, [eax - 0x1eb7af12]
lea ebx, [eax + edx]
add ebx, 0xe14850ee
and ecx, edx
mov byte [esp], 0x7e
jmp 0x40b5d8
lea ebx, [eax + edx]
add ebx, 0xb634fd69
add eax, 0xb634fd69
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x21
jmp 0x40b503
mov eax, 0x746427
jmp 0x40baa0
xor eax, eax
jmp 0x40baa0
mov eax, 0x14fd584
lea esi, [esp + eax]
add esi, 0x308
xor edi, edi
mov dword [0x4784b0], edi
mov dword [0x4784c0], edi
mov dword [0x4784c4], 0xf
mov byte [0x4784b0], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4784b0
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x4732e0]
movups xmmword [esp + 0x2a8], xmm0
movaps xmm0, xmmword [0x4732f0]
movups xmmword [esp + 0x2b8], xmm0
mov dword [esp + 0x2c8], 0xe7db3518
mov word [esp + 0x2cc], 0xc1c5
mov byte [esp + 0x2ce], 0x66
mov dword [esp + 0x2d3], edi
mov dword [esp + 0x2cf], edi
mov dword [esp + 0x2d8], edi
mov dword [esp + 0x2d4], edi
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov esi, dword [eax]
xor ebp, ebp
mov ecx, 0x162acbc
cmp edi, ebp
ja 0x40c602
mov dword [esp + 0xc], ebx
movzx edx, byte [esp + ebp + 0x2a8]
lea ecx, [ebp + 0x1d8bab2c]
lea ebx, [edx + ebp]
add ebx, 0x1d8bab2c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xcc
lea ecx, [ebp + 0x6c750a9c]
lea eax, [edx + ebp]
add eax, 0x6c750a9c
and ecx, edx
add ecx, ecx
sub eax, ecx
add al, 0xbc
mov dword [esp + 0x10], eax
lea ecx, [ebp - 0x30416574]
lea eax, [edx + ebp]
add eax, 0xcfbe9a8c
and ecx, edx
add ecx, ecx
sub eax, ecx
add al, 0x2c
mov dword [esp + 0x14], eax
lea ecx, [ebp - 0x6b58bbcc]
and ecx, edx
add ecx, ecx
mov dword [esp + 4], edx
mov eax, ebp
mov dword [esp], ebp
add edx, ebp
add edx, 0x94a74434
sub edx, ecx
add dl, 0x94
mov dword [esp + 8], ebx
lea ebp, [esi + 1]
mov ecx, ebx
cmp edi, ebp
jb 0x40bc01
je 0x40c00b
lea ecx, [esi + 2]
cmp edi, ecx
je 0x40c02e
lea ecx, [esi + 3]
cmp edi, ecx
je 0x40c051
lea ebp, [esi + 6]
mov ecx, dword [esp + 0xc]
cmp edi, ebp
je 0x40c077
cmp esi, dword [esp]
ja 0x40c5f9
lea ebp, [edi + esi]
cmp ebp, dword [esp]
jbe 0x40bf94
mov ecx, esi
add esi, 0x80
cmp edi, esi
je 0x40bde4
lea esi, [ecx + 0x200]
cmp edi, esi
je 0x40be29
lea esi, [ecx + 0x7a]
cmp edi, esi
je 0x40be4d
lea esi, [ecx + 0x41]
cmp edi, esi
je 0x40be76
lea esi, [ecx + 0x5a]
cmp edi, esi
je 0x40bebf
lea esi, [ecx + 0x2a]
cmp edi, esi
je 0x40bee4
lea esi, [ecx + 1]
cmp edi, esi
je 0x40bf12
lea esi, [ecx + 6]
cmp edi, esi
je 0x40bf3c
lea esi, [ecx + 8]
cmp edi, esi
je 0x40bf66
lea edi, [ecx + 0x61]
lea esi, [ecx + 0x6c]
cmp edi, esi
jb 0x40c5d6
lea esi, [ecx + 0x6b]
lea ebp, [ecx + 0x6d]
cmp edi, ebp
jb 0x40c5b3
lea ebp, [ecx + 0x6e]
cmp edi, ebp
jb 0x40bdcc
lea ebp, [ecx + 0x6f]
cmp edi, ebp
jae 0x40bcc9
cmp esi, dword [esp]
ja 0x40c5f9
lea ecx, [edi + esi]
cmp ecx, dword [esp]
ja 0x40bc16
jmp 0x40bf90
lea ebp, [ecx + 0x70]
cmp edi, ebp
jae 0x40bce1
lea ecx, [esi + edi]
cmp ecx, dword [esp]
ja 0x40bc16
jmp 0x40c09a
lea ebp, [ecx + 0x7b]
cmp edi, ebp
jb 0x40c0bd
lea ebp, [ecx + 0x8b]
cmp edi, ebp
jb 0x40c165
lea ebp, [ecx + 0x93]
cmp edi, ebp
jb 0x40c1d8
lea ebp, [ecx + 0xab]
cmp edi, ebp
jb 0x40c24d
lea ebp, [ecx + 0x453]
cmp edi, ebp
jb 0x40bc16
lea edi, [ecx + 0x71]
lea esi, [ecx + 0x471]
lea ebp, [ecx + 0x479]
cmp edi, ebp
ja 0x40c2fe
lea ebp, [ecx + 0x47a]
cmp edi, ebp
ja 0x40c321
lea ebp, [ecx + 0x47b]
cmp edi, ebp
ja 0x40c390
lea ebp, [ecx + 0x4b3]
cmp edi, ebp
ja 0x40c3b4
lea ebp, [ecx + 0x4d5]
cmp edi, ebp
ja 0x40c3d8
lea ebp, [ecx + 0x4f1]
cmp edi, ebp
ja 0x40c3fc
lea ebp, [ecx + 0x671]
cmp edi, ebp
ja 0x40c422
lea ebp, [ecx + 0x4eb]
cmp edi, ebp
ja 0x40c446
lea ebp, [ecx + 0x4b2]
cmp edi, ebp
ja 0x40c46a
lea ebp, [ecx + 0x4cb]
cmp edi, ebp
ja 0x40bc16
lea edi, [ecx + 0x499]
add ecx, 0x4c3
mov esi, ecx
jmp 0x40bc16
mov ecx, edx
mov dword [esp + 0xc], ecx
cmp edi, dword [esp]
mov ebx, dword [esp + 8]
jbe 0x40bbcd
jmp 0x40cbe9
mov eax, dword [esp]
lea edx, [eax - 0x4dfc7318]
mov ebp, dword [esp + 4]
lea ebx, [eax + ebp]
add ebx, 0xb2038ce8
and edx, ebp
add edx, edx
sub ebx, edx
add bl, 0xa8
mov esi, ecx
mov eax, dword [esp]
lea edx, [eax - 0x1cce214c]
lea ecx, [eax + ebp]
add ecx, 0xe331deb4
and edx, ebp
add edx, edx
sub ecx, edx
add cl, 0x14
mov byte [esp + eax + 0x2a8], cl
jmp 0x40be4a
mov eax, dword [esp]
lea edx, [eax - 0x12e51cc0]
mov esi, dword [esp + 4]
lea ebx, [eax + esi]
add ebx, 0xed1ae340
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x40
mov esi, ecx
inc esi
jmp 0x40be6e
mov eax, dword [esp]
lea edx, [eax + 0x28323998]
mov esi, dword [esp + 4]
lea ebx, [eax + esi]
add ebx, 0x28323998
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0xd8
mov esi, ecx
dec dword [esp]
jmp 0x40c37c
mov eax, dword [esp]
lea edx, [eax + 0x63498ff0]
mov esi, dword [esp + 4]
lea ebx, [eax + esi]
add ebx, 0x63498ff0
mov ebp, esi
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x70
mov esi, ecx
mov eax, dword [esp]
lea edx, [eax + 0x1e49350c]
lea ecx, [eax + ebp]
add ecx, 0x1e49350c
and edx, ebp
add edx, edx
sub ecx, edx
add cl, bl
add cl, 0xac
mov byte [esp + eax + 0x2a8], cl
jmp 0x40bee0
mov eax, dword [esp]
lea edx, [eax - 0x619f19b8]
mov esi, dword [esp + 4]
lea ebx, [eax + esi]
add ebx, 0x9e60e648
and edx, esi
add edx, edx
sub ebx, edx
add bl, 8
mov esi, ecx
add edi, esi
jmp 0x40bf05
mov eax, dword [esp]
lea edx, [eax - 0x2687c360]
mov esi, dword [esp + 4]
lea ebx, [eax + esi]
add ebx, 0xd9783ca0
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0xa0
mov esi, ecx
movzx ecx, bl
not ecx
add dword [esp], ecx
jmp 0x40c37c
mov eax, dword [esp]
lea edx, [eax + 0x148f92f8]
mov esi, dword [esp + 4]
lea ebx, [eax + esi]
add ebx, 0x148f92f8
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x38
mov ebp, ebx
mov ebx, esi
mov esi, ecx
jmp 0x40c106
mov eax, dword [esp]
lea edx, [eax + 0x4fa6e950]
mov esi, dword [esp + 4]
lea ebx, [eax + esi]
add ebx, 0x4fa6e950
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0xd0
mov ebp, ebx
mov ebx, esi
mov esi, ecx
jmp 0x40c342
mov eax, dword [esp]
lea edx, [eax - 0x7541c058]
mov esi, dword [esp + 4]
lea ebx, [eax + esi]
add ebx, 0x8abe3fa8
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x68
mov ebp, ebx
mov ebx, esi
mov esi, ecx
jmp 0x40c375
mov ecx, dword [esp + 0x14]
lea edx, [esi + 0x400]
cmp edi, edx
movzx edx, byte [esp + 0x10]
movzx ecx, cl
cmovb ecx, edx
mov ebx, dword [esp + 4]
lea edx, [esi + 0x28]
cmp edi, edx
jae 0x40bfbb
mov edx, dword [esp + 8]
jmp 0x40c0dc
lea edx, [esi + 1]
cmp edi, edx
jne 0x40bfe1
mov edx, dword [esp]
lea ecx, [edx - 0x2715eac8]
add edx, ebx
add edx, 0xd8ea1538
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x78
jmp 0x40c31d
lea edx, [esi + 2]
cmp edi, edx
jne 0x40c27f
mov edx, dword [esp]
lea ecx, [edx + 0x14016b90]
add edx, ebx
add edx, 0x14016b90
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x10
jmp 0x40c340
mov edx, dword [esp]
lea ecx, [edx + 0x58a30184]
mov ebx, dword [esp + 4]
add edx, ebx
add edx, 0x58a30184
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x64
jmp 0x40c31d
mov edx, dword [esp]
lea ecx, [edx - 0x6c45a824]
mov ebx, dword [esp + 4]
add edx, ebx
add edx, 0x93ba57dc
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0xfc
jmp 0x40c340
mov edx, dword [esp]
lea ecx, [edx - 0x7fe84ec4]
mov eax, dword [esp + 4]
lea ebx, [edx + eax]
add ebx, 0x8017b13c
mov ebp, eax
and ecx, eax
add ecx, ecx
sub ebx, ecx
add bl, 0x5c
jmp 0x40be99
mov ebx, dword [esp]
lea ecx, [ebx - 0x44d0f86c]
mov edx, dword [esp + 4]
add ebx, edx
add ebx, 0xbb2f0794
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xf4
jmp 0x40be6e
mov ecx, dword [esp]
lea edx, [ecx + 0xad5f0e4]
mov ebx, dword [esp + 4]
add ecx, ebx
add ecx, 0xad5f0e4
and edx, ebx
add edx, edx
sub ecx, edx
add cl, 0xc4
jmp 0x40bfab
mov eax, dword [esp]
lea ecx, [eax + 0x45ed473c]
mov ebx, dword [esp + 4]
lea edx, [eax + ebx]
add edx, 0x45ed473c
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x5c
lea ecx, [esi + edi]
cmp ecx, 0x200
jne 0x40c13e
mov eax, dword [esp]
lea ecx, [eax + 0x3bd4e038]
lea edx, [eax + ebx]
add edx, 0x3bd4e038
and ecx, ebx
add ecx, ecx
sub edx, ecx
sub dl, bl
add dl, 0x78
mov ebp, edx
mov eax, dword [esp]
lea edx, [eax + 0x59608b64]
lea ecx, [eax + ebx]
add ecx, 0x59608b64
and edx, ebx
add edx, edx
sub ecx, edx
add cl, 0x44
mov byte [esp + eax + 0x2a8], cl
lea edx, [esi + 1]
movzx ecx, cl
not esi
sub eax, ecx
add eax, esi
mov dword [esp], eax
mov esi, edx
jmp 0x40c342
lea ecx, [esi + 5]
cmp edi, ecx
jbe 0x40c21f
mov edx, dword [esp]
lea ecx, [edx + 0xa47c97c]
add edx, ebx
add edx, 0xa47c97c
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x9c
jmp 0x40c184
mov eax, dword [esp]
lea ecx, [eax - 0x7efb626c]
mov ebx, dword [esp + 4]
lea edx, [eax + ebx]
add edx, 0x81049d94
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0xf4
cmp edi, 1
ja 0x40c1b3
lea ecx, [esi + 0x64]
cmp edi, ecx
jbe 0x40c2ab
mov edx, dword [esp]
lea ecx, [edx + 0x76bcd418]
add edx, ebx
add edx, 0x76bcd418
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x58
xor edi, edi
inc edi
jmp 0x40c1f7
mov eax, dword [esp]
lea ecx, [eax + 0xbd89e0]
mov edx, ebx
add ebx, eax
add ebx, 0xbd89e0
and ecx, edx
add ecx, ecx
sub ebx, ecx
mov ebp, edx
add bl, dl
add bl, 0xe0
jmp 0x40be99
mov eax, dword [esp]
lea ecx, [eax - 0x43e40c14]
mov ebx, dword [esp + 4]
lea edx, [eax + ebx]
add edx, 0xbc1bf3ec
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x8c
cmp esi, 8
jbe 0x40c26e
mov edx, dword [esp]
lea ecx, [edx - 0x3a59cc78]
mov ebp, ebx
add ebx, edx
add ebx, 0xc5a63388
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, bl
add bl, 0x90
jmp 0x40be05
mov ebp, edx
lea edx, [esi + 1]
cmp edi, edx
jne 0x40c2d2
mov edx, dword [esp]
lea ecx, [edx + 0x455f1fd4]
mov ebp, ebx
add ebx, edx
add ebx, 0x455f1fd4
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0x34
jmp 0x40be05
mov eax, dword [esp]
lea ecx, [eax - 0x8ccb5bc]
mov edx, dword [esp + 4]
lea ebx, [eax + edx]
add ebx, 0xf7334a44
and ecx, edx
mov edx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x24
mov eax, dword [esp]
mov byte [esp + eax + 0x2a8], dl
mov ebx, edx
jmp 0x40c37c
lea edx, [esi + 5]
cmp edi, edx
jne 0x40c48e
mov ebp, dword [esp]
lea ecx, [ebp - 0x3ab89168]
mov edx, ebx
add ebx, ebp
add ebx, 0xc5476e98
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xd8
jmp 0x40bee0
lea ecx, [esi + 1]
cmp edi, ecx
jne 0x40c4b6
mov edx, dword [esp]
lea ecx, [edx - 0x4e2bd590]
add edx, ebx
add edx, 0xb1d42a70
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0xf0
jmp 0x40c31d
lea edx, [esi + 2]
cmp edi, edx
jne 0x40c4dc
mov ebp, dword [esp]
lea ecx, [ebp - 0x4472337c]
mov edx, ebx
add ebx, ebp
add ebx, 0xbb8dcc84
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x64
jmp 0x40be6e
mov eax, dword [esp]
lea ecx, [eax - 0x75125de0]
mov ebx, dword [esp + 4]
lea edx, [eax + ebx]
add edx, 0x8aeda220
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x20
mov ebp, edx
jmp 0x40c375
mov eax, dword [esp]
lea ecx, [eax - 0x39fb0788]
mov ebx, dword [esp + 4]
lea edx, [eax + ebx]
add edx, 0xc604f878
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0xb8
mov ebp, edx
mov eax, dword [esp]
lea edx, [eax + 0x76ec3690]
lea ecx, [eax + ebx]
add ecx, 0x76ec3690
and edx, ebx
add edx, edx
sub ecx, edx
add cl, 0x10
mov byte [esp + eax + 0x2a8], cl
sub eax, edi
inc edi
movzx ebx, byte [esp + eax + 0x2a6]
add eax, 0xfffffffe
mov dword [esp], eax
add ebx, esi
add dword [esp], ebx
mov ebx, ebp
mov eax, dword [esp]
inc eax
mov ebp, eax
cmp eax, 0x34
jb 0x40bb44
jmp 0x40c600
mov eax, dword [esp]
lea ecx, [eax + 0x11c4ed0]
mov ebx, dword [esp + 4]
lea edx, [eax + ebx]
add edx, 0x11c4ed0
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x50
jmp 0x40c104
mov eax, dword [esp]
lea ecx, [eax + 0x3c33a528]
mov edx, dword [esp + 4]
lea ebx, [eax + edx]
add ebx, 0x3c33a528
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe8
jmp 0x40bf05
mov eax, dword [esp]
lea ecx, [eax + 0x774afb80]
mov edx, dword [esp + 4]
lea ebx, [eax + edx]
add ebx, 0x774afb80
and ecx, edx
add ecx, ecx
sub ebx, ecx
xor bl, 0x80
jmp 0x40bee0
mov eax, dword [esp]
lea ecx, [eax - 0x4d9dae28]
mov edx, dword [esp + 4]
lea ebx, [eax + edx]
add ebx, 0xb26251d8
mov ebp, edx
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x18
jmp 0x40be99
mov eax, dword [esp]
lea ecx, [eax - 0x128657d0]
mov edx, dword [esp + 4]
lea ebx, [eax + edx]
add ebx, 0xed79a830
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb0
jmp 0x40be6e
mov eax, dword [esp]
lea ecx, [eax + 0x2890fe88]
mov edx, dword [esp + 4]
lea ebx, [eax + edx]
add ebx, 0x2890fe88
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x48
jmp 0x40be4a
mov eax, dword [esp]
lea ecx, [eax + 0x63a854e0]
mov ebp, dword [esp + 4]
lea ebx, [eax + ebp]
add ebx, 0x63a854e0
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0xe0
jmp 0x40be05
lea edx, [esi + 4]
cmp edi, edx
jne 0x40c501
mov ebp, dword [esp]
lea ecx, [ebp + 0x3b761b48]
mov edx, ebx
add ebx, ebp
add ebx, 0x3b761b48
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 8
jmp 0x40be6e
lea ecx, [esi + 3]
cmp edi, ecx
jne 0x40c529
mov edx, dword [esp]
lea ecx, [edx + 0x2802d720]
add edx, ebx
add edx, 0x2802d720
and ecx, ebx
add ecx, ecx
sub edx, ecx
add dl, 0x20
jmp 0x40c104
cmp edi, ecx
jne 0x40c551
mov ebp, dword [esp]
lea ecx, [ebp + 0x6cd3cf8c]
mov edx, ebx
add ebx, ebp
add ebx, 0x6cd3cf8c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x2c
jmp 0x40bf05
lea edx, [esi + 3]
cmp edi, edx
jne 0x40c558
mov edx, dword [esp]
lea ecx, [edx - 0x4e5b3808]
mov ebp, ebx
add ebx, edx
add ebx, 0xb1a4c7f8
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0x38
jmp 0x40be05
lea ecx, [esi + 2]
cmp edi, ecx
jne 0x40c55f
mov ebp, dword [esp]
lea ecx, [ebp + 0x631a2d78]
mov edx, ebx
add ebx, ebp
add ebx, 0x631a2d78
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb8
jmp 0x40bf05
mov edx, ebp
jmp 0x40c184
mov edx, ecx
jmp 0x40c0dc
lea ecx, [esi + 7]
cmp edi, ecx
jne 0x40c587
mov ebp, dword [esp]
lea ecx, [ebp + 0x4f7786d8]
mov edx, ebx
add ebx, ebp
add ebx, 0x4f7786d8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x18
jmp 0x40be4a
lea ecx, [esi + 9]
cmp edi, ecx
jne 0x40c1f7
mov edx, dword [esp]
lea ecx, [edx - 0x757122d0]
mov ebp, ebx
add ebx, edx
add ebx, 0x8a8edd30
and ecx, ebp
add ecx, ecx
sub ebx, ecx
add bl, 0xb0
jmp 0x40be05
mov ecx, dword [esp + 4]
mov eax, dword [esp]
lea ebx, [eax + ecx]
add ebx, 0x598feddc
add eax, 0x598feddc
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0xfc
jmp 0x40bb42
mov ecx, dword [esp + 4]
mov eax, dword [esp]
lea ebx, [eax + ecx]
add ebx, 0x1e789784
add eax, 0x1e789784
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0x64
jmp 0x40bb34
mov ecx, 0x1570190
jmp 0x40c602
xor ecx, ecx
lea esi, [esp + ecx]
add esi, 0x2a8
xor edi, edi
mov dword [0x4784c8], edi
mov dword [0x4784d8], edi
mov dword [0x4784dc], 0xf
mov byte [0x4784c8], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4784c8
push eax
push esi
call fcn.00450e50
movaps xmm0, xmmword [0x473300]
movups xmmword [esp + 0x358], xmm0
mov dword [esp + 0x368], 0x336a7e6b
mov dword [esp + 0x36c], 0x706c7e1e
mov word [esp + 0x370], 0xdd7a
xorps xmm0, xmm0
movups xmmword [esp + 0x372], xmm0
mov dword [esp + 0x383], edi
mov dword [esp + 0x37f], edi
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edi, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x40cb7f
movzx edx, byte [esp + eax + 0x358]
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x40c725
lea ecx, [eax - 0x5f9aad5f]
lea ebx, [eax + edx]
add ebx, 0xa06552a1
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x99
cmp edi, eax
ja 0x40cb8a
mov dword [esp], ebp
lea ebp, [edi + 4]
cmp esi, ebp
jae 0x40c744
lea ecx, [eax + 0x284fc735]
lea ebx, [eax + edx]
add ebx, 0x284fc735
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x8d
lea ecx, [esi + edi]
cmp ecx, eax
jbe 0x40c7b7
cmp esi, dword [esp]
jne 0x40c85b
mov dword [esp + 4], ecx
lea ecx, [eax - 0x114be9ca]
lea ebx, [eax + edx]
add ebx, 0xeeb41636
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x86
jmp 0x40c882
jne 0x40c78f
lea ecx, [eax - 0x1ed0081d]
lea ebx, [eax + edx]
add ebx, 0xe12ff7e3
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xcb
jmp 0x40ca44
cmp esi, dword [esp]
jne 0x40c808
lea ecx, [eax + 0x691a6c77]
lea ebx, [eax + edx]
add ebx, 0x691a6c77
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xbf
mov ebp, dword [esp]
lea edi, [eax - 0x773bc139]
lea ecx, [edx + eax]
add ecx, 0x88c43ec7
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0x8f
mov byte [esp + eax + 0x358], cl
mov edi, ebp
dec eax
jmp 0x40ca48
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x40c830
lea ecx, [eax + 0x21fa9d25]
lea ebx, [eax + edx]
add ebx, 0x21fa9d25
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xfd
jmp 0x40ca13
mov dword [esp + 4], ecx
lea ecx, [edi + 0x20]
cmp esi, ecx
jae 0x40c892
lea ecx, [eax - 0x5f9aad5f]
lea ebx, [eax + edx]
add ebx, 0xa06552a1
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x99
cmp dword [esp + 4], 0x20
jne 0x40c8dd
lea ecx, [eax + 0x69f436aa]
lea ebx, [eax + edx]
add ebx, 0x69f436aa
and ecx, edx
add ecx, ecx
sub ebx, ecx
sub bl, dl
add bl, 0x5a
jmp 0x40c94b
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x40c8b8
lea ecx, [eax - 0x1225b3fd]
lea ebx, [eax + edx]
add ebx, 0xedda4c03
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xeb
jmp 0x40c94b
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x40c6c6
mov dword [esp], ebp
lea ecx, [eax + 0x62c54267]
lea ebx, [eax + edx]
add ebx, 0x62c54267
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x2f
jmp 0x40c94b
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x40c903
lea ecx, [eax + 0x2f7ebb78]
lea ebx, [eax + edx]
add ebx, 0x2f7ebb78
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb8
mov dword [esp + 4], esi
movzx ecx, bl
not ecx
add eax, ecx
mov esi, dword [esp + 4]
jmp 0x40ca48
cmp esi, dword [esp]
jne 0x40c928
lea ecx, [eax + 0x509f8e6a]
lea ebx, [eax + edx]
add ebx, 0x509f8e6a
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x1a
jmp 0x40ca44
cmp esi, ebp
jne 0x40c97d
lea ecx, [eax + 0x2ea4f145]
lea ebx, [eax + edx]
add ebx, 0x2ea4f145
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x1d
jmp 0x40ca13
cmp esi, dword [esp]
jne 0x40c9a5
lea ecx, [eax + 0x78ef559f]
lea ebx, [eax + edx]
add ebx, 0x78ef559f
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xa7
jmp 0x40c765
lea ecx, [edi + 5]
cmp esi, ecx
jne 0x40c9f0
lea ecx, [eax + 0x704960ba]
lea ebx, [eax + edx]
add ebx, 0x704960ba
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xea
jmp 0x40c94b
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x40ca57
lea ecx, [eax - 0x2dcb2712]
lea ebx, [eax + edx]
add ebx, 0xd234d8ee
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x7e
lea ebp, [eax + 0xa59894b]
lea ecx, [edx + eax]
add ecx, 0xa59894b
and ebp, edx
add ebp, ebp
sub ecx, ebp
add cl, 0xf3
mov byte [esp + eax + 0x358], cl
movzx ecx, cl
not edi
add edi, eax
sub edi, ecx
mov eax, edi
mov ebp, dword [esp]
jmp 0x40ca15
lea ecx, [edi + 6]
cmp esi, ecx
jne 0x40c6f0
lea ecx, [eax + 0x6f6f9687]
lea ebx, [eax + edx]
add ebx, 0x6f6f9687
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x4f
jmp 0x40ca44
lea ecx, [edi + 2]
cmp esi, ecx
jne 0x40ca7b
lea ecx, [eax + 0x3b4f4565]
lea ebx, [eax + edx]
add ebx, 0x3b4f4565
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x3d
lea ecx, [eax - 0x36711bf7]
lea esi, [eax + edx]
add esi, 0xc98ee409
and ecx, edx
add ecx, ecx
mov edx, esi
sub edx, ecx
add dl, bl
add dl, 0xc1
mov byte [esp + eax + 0x358], dl
jmp 0x40c882
lea ecx, [edi + 0x20]
cmp esi, ecx
jne 0x40cb63
lea ecx, [eax - 0x4eebfa04]
lea ebx, [eax + edx]
add ebx, 0xb11405fc
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x1c
mov ebp, edi
lea edi, [eax - 0x55412414]
lea ecx, [eax + edx]
add ecx, 0xaabedbec
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0x8c
mov byte [esp + eax + 0x358], cl
sub eax, esi
inc esi
movzx edx, byte [esp + eax + 0x356]
add eax, 0xfffffffe
mov edi, ebp
add edx, edi
add eax, edx
inc eax
cmp eax, 0x2f
jb 0x40c697
jmp 0x40cb86
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x40ca9c
lea ecx, [eax + 0x53ca2372]
lea ebx, [eax + edx]
add ebx, 0x53ca2372
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe2
jmp 0x40c882
cmp esi, ebp
jne 0x40cac4
lea ecx, [eax + 0x7c19eaa7]
lea ebx, [eax + edx]
add ebx, 0x7c19eaa7
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x6f
jmp 0x40c882
lea ecx, [edi + 6]
cmp esi, ecx
jne 0x40c7de
lea ecx, [eax - 0x2aa0920a]
lea ebx, [eax + edx]
add ebx, 0xd55f6df6
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x46
jmp 0x40c789
lea ecx, [edi + 5]
cmp esi, ecx
jne 0x40cae8
lea ecx, [eax - 0x431b7017]
lea ebx, [eax + edx]
add ebx, 0xbce48fe9
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xa1
jmp 0x40c87e
lea ecx, [edi + 3]
cmp esi, ecx
jne 0x40cb0c
lea ecx, [eax + 0x22d46758]
lea ebx, [eax + edx]
add ebx, 0x22d46758
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x98
jmp 0x40c94b
lea ecx, [edi + 7]
cmp esi, ecx
mov ebp, dword [esp]
jne 0x40cb33
lea ecx, [eax - 0x586bb91c]
lea ebx, [eax + edx]
add ebx, 0xa79446e4
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc4
jmp 0x40c768
cmp edi, 1
ja 0x40cb44
mov byte [esp + eax + 0x358], bl
jmp 0x40ca48
lea ecx, [eax - 0x17a113da]
lea ebx, [eax + edx]
add ebx, 0xe85eec26
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, bl
add bl, 0xec
jmp 0x40c768
lea ebx, [eax + edx]
add ebx, 0x13d94863
add eax, 0x13d94863
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x4b
jmp 0x40c687
mov eax, 0xb8d6cd
jmp 0x40cb8f
xor eax, eax
jmp 0x40cb8f
mov eax, 0x153842c
lea esi, [esp + eax]
add esi, 0x358
xor eax, eax
mov dword [0x4784e0], eax
mov dword [0x4784f0], eax
mov dword [0x4784f4], 0xf
mov byte [0x4784e0], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, 0x4784e0
push eax
push esi
call fcn.00450e50
push 0x40cc9f
call fcn.00471a0a
add esp, 0x630
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, 0xb98a60
jmp 0x407d05
mov ecx, 0x162acbc
jmp 0x40c602
mov eax, 0x676395
jmp 0x4064d2
mov eax, 0x15c4108
jmp 0x4030ea
mov eax, 0x8b8254
jmp 0x40a740
mov edx, 0x1488c24
jmp 0x405653
mov ecx, dword [esp + 4]
cmp byte [ecx], 3
jne 0x45e58a
mov eax, dword [esp + 8]
mov edx, dword [ecx + 8]
mov ecx, dword [edx + 0x10]
cmp dword [edx + 0x14], 0x10
jb 0x45e584
mov edx, dword [edx]
mov dword [eax], edx
mov dword [eax + 4], ecx
ret
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
jmp 0x4015dc