Function at 0x42c344
Capabilities:
Access peb ldr_data
Authenticate hmac
Check os version
Encode data using xor
Get number of processors
Hash data using fnv
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x380
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x2bc], ecx
mov dword [ebp - 0x2b8], eax
xor ebx, ebx
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x68], ebx
mov esi, 0xf
mov dword [ebp - 0x64], esi
mov byte [ebp - 0x78], bl
sub esp, 0xc
mov al, byte [ebp - 0x32c]
mov byte [esp + 8], al
mov dword [esp + 4], edx
lea eax, [ebp - 0x38c]
mov dword [esp], eax
call fcn.00452893
add esp, 0xc
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x1d0], ebx
mov dword [ebp - 0x1c0], ebx
mov dword [ebp - 0x1bc], esi
mov byte [ebp - 0x1d0], bl
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x20], eax
add eax, 8
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x60], 0x7c797e53
mov dword [ebp - 0x5c], 0x7897471
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov esi, dword [eax]
xor eax, eax
cmp edi, eax
ja 0x42c990
movzx edx, byte [ebp + eax - 0x60]
lea ecx, [esi + 1]
mov dword [ebp - 0x10], ecx
cmp edi, ecx
jae 0x42c47d
lea ecx, [eax + 0x688acc82]
lea ebx, [eax + edx]
add ebx, 0x688acc82
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x72
cmp esi, eax
ja 0x42c99b
mov dword [ebp - 0x14], esi
lea ecx, [esi + 3]
cmp edi, ecx
mov dword [ebp - 0x18], edi
jae 0x42c49c
mov dword [ebp - 0x1c], ecx
lea ecx, [eax - 0x6c9d3956]
lea ebx, [eax + edx]
add ebx, 0x9362c6aa
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x5a
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x14]
lea ecx, [edi + esi]
cmp ecx, eax
jbe 0x42c50b
mov esi, dword [ebp - 0x10]
cmp edi, esi
jne 0x42c5e7
lea ecx, [eax - 0x145c2024]
lea ebx, [eax + edx]
add ebx, 0xeba3dfdc
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xfc
jmp 0x42c4bf
jne 0x42c4e3
lea ecx, [eax + 0x39a06586]
lea ebx, [eax + edx]
add ebx, 0x39a06586
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x56
jmp 0x42c88b
mov esi, dword [ebp - 0x10]
cmp edi, esi
jne 0x42c591
lea ecx, [eax + 0x64785fae]
lea ebx, [eax + edx]
add ebx, 0x64785fae
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x3e
lea edi, [eax + 0xfd8484e]
lea ecx, [edx + eax]
add ecx, 0xfd8484e
and edi, edx
add edi, edi
sub ecx, edi
add cl, 0xde
mov byte [ebp + eax - 0x60], cl
mov edi, dword [ebp - 0x18]
jmp 0x42c6a6
lea ecx, [esi + 2]
cmp edi, ecx
jne 0x42c5bf
lea ecx, [eax - 0x531ecf6e]
lea ebx, [eax + edx]
add ebx, 0xace13092
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 2
jmp 0x42c7b5
lea ecx, [esi + 5]
cmp edi, ecx
jae 0x42c612
mov dword [ebp - 0x2c], ecx
lea ecx, [eax + 0x688acc82]
lea ebx, [eax + edx]
add ebx, 0x688acc82
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x72
mov esi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x14]
add ecx, 8
mov edi, dword [ebp - 0x18]
cmp edi, ecx
jbe 0x42c65d
lea ecx, [eax - 0x16ed4506]
lea ebx, [eax + edx]
add ebx, 0xe912bafa
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x2a
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
cmp edi, 9
ja 0x42c702
cmp edi, esi
jne 0x42c7e6
lea ecx, [eax + 0x4d8b1aa8]
lea ebx, [eax + edx]
add ebx, 0x4d8b1aa8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x68
jmp 0x42c888
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x14]
add ecx, 2
cmp edi, ecx
jne 0x42c63a
lea ecx, [eax + 0x358df8b2]
lea ebx, [eax + edx]
add ebx, 0x358df8b2
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x22
jmp 0x42c6a6
lea ecx, [esi + 3]
cmp edi, ecx
jne 0x42c417
lea ecx, [eax + 0x7df6c996]
lea ebx, [eax + edx]
add ebx, 0x7df6c996
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe6
jmp 0x42c7b3
mov ecx, dword [ebp - 0x14]
add ecx, 2
cmp edi, ecx
jne 0x42c682
lea ecx, [eax - 0x43468720]
lea ebx, [eax + edx]
add ebx, 0xbcb978e0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe0
jmp 0x42c6a6
mov esi, dword [ebp - 0x10]
cmp edi, esi
jne 0x42c6ac
lea ecx, [eax + 0x26c58d54]
lea ebx, [eax + edx]
add ebx, 0x26c58d54
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb4
jmp 0x42c888
cmp edi, dword [ebp - 0x1c]
jne 0x42c6d7
lea ecx, [eax + 0x6a391b6]
lea ebx, [eax + edx]
add ebx, 0x6a391b6
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 6
jmp 0x42c6a3
cmp edi, esi
jne 0x42c71e
lea ecx, [eax - 0x45d7ac02]
lea ebx, [eax + edx]
add ebx, 0xba2853fe
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xe
jmp 0x42c4bf
cmp edi, dword [ebp - 0x1c]
jne 0x42c741
lea ecx, [eax - 0x7230ee1c]
lea ebx, [eax + edx]
add ebx, 0x8dcf11e4
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc4
mov esi, dword [ebp - 0x14]
dec eax
jmp 0x42c88f
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x14]
add ecx, 2
cmp edi, ecx
jne 0x42c76c
lea edi, [eax - 0x370f40a4]
lea ebx, [eax + edx]
add ebx, 0xc8f0bf5c
and edi, edx
mov byte [ebp - 0x1c], 0x7c
jmp 0x42c825
mov esi, dword [ebp - 0x14]
lea ecx, [esi + 4]
cmp edi, ecx
jne 0x42c7c1
lea ecx, [eax - 0x2846d546]
lea ebx, [eax + edx]
add ebx, 0xd7b92aba
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xea
jmp 0x42c78f
lea ecx, [eax + 0x786314d0]
lea ebx, [eax + edx]
add ebx, 0x786314d0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, dl
add bl, 0x50
jmp 0x42c78f
cmp edi, dword [ebp - 0x2c]
jne 0x42c805
lea ecx, [eax - 0x18147f2]
lea ebx, [eax + edx]
add ebx, 0xfe7eb80e
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x9e
jmp 0x42c7b0
mov esi, dword [ebp - 0x14]
lea ecx, [esi + 4]
cmp edi, ecx
jne 0x42c89e
lea ecx, [eax - 0x5cc4f108]
lea ebx, [eax + edx]
add ebx, 0xa33b0ef8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x38
jmp 0x42c861
mov ecx, dword [ebp - 0x1c]
cmp edi, ecx
jne 0x42c8c3
lea ecx, [eax + 0x3c318a68]
lea ebx, [eax + edx]
add ebx, 0x3c318a68
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x28
lea esi, [eax - 0x1f121eae]
lea ecx, [edx + eax]
add ecx, 0xe0ede152
and esi, edx
add esi, esi
sub ecx, esi
add cl, bl
add cl, 0xc2
mov byte [ebp + eax - 0x60], cl
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x14]
add edi, esi
movzx ecx, bl
not ecx
add eax, ecx
jmp 0x42c88f
lea ecx, [esi + 5]
cmp edi, ecx
jne 0x42c8f1
lea ecx, [eax - 0x57313c42]
lea ebx, [eax + edx]
add ebx, 0xa8cec3be
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xce
jmp 0x42c7b3
cmp edi, ecx
jne 0x42c91f
lea edi, [eax - 0x1049b350]
lea ebx, [eax + edx]
add ebx, 0xefb64cb0
and edi, edx
mov byte [ebp - 0x1c], 0x30
jmp 0x42c825
mov ecx, dword [ebp - 0x1c]
cmp edi, ecx
jne 0x42c560
lea edi, [eax - 0x5f5615ea]
lea ebx, [eax + edx]
add ebx, 0xa0a9ea16
and edi, edx
mov byte [ebp - 0x1c], 0x66
mov esi, dword [ebp - 0x14]
add edi, edi
sub ebx, edi
lea ecx, [eax - 0x4dfc85aa]
and ecx, edx
add ecx, ecx
lea edi, [edx + eax]
add edi, 0xb2037a56
sub edi, ecx
mov ecx, edi
add cl, 0xa6
mov byte [ebp + eax - 0x60], cl
not esi
add esi, eax
movzx eax, cl
sub esi, eax
add bl, byte [ebp - 0x1c]
mov eax, esi
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x14], ecx
mov edi, dword [ebp - 0x18]
lea esi, [eax + 0x1a8e46d8]
lea ecx, [eax + edx]
add ecx, 0x1a8e46d8
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0x18
mov byte [ebp + eax - 0x60], cl
sub eax, edi
inc edi
movzx edx, byte [ebp + eax - 0x62]
add eax, 0xfffffffe
mov esi, dword [ebp - 0x14]
add edx, esi
add eax, edx
inc eax
cmp eax, 0x18
jb 0x42c3e8
jmp 0x42c997
lea ecx, [esi + 5]
cmp edi, ecx
jne 0x42c974
lea ecx, [eax + 0x7450a7fc]
lea ebx, [eax + edx]
add ebx, 0x7450a7fc
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x1c
jmp 0x42c88b
mov ecx, dword [ebp - 0x14]
add ecx, 7
cmp edi, ecx
jne 0x42c534
lea ecx, [eax + 0xd47236c]
lea ebx, [eax + edx]
add ebx, 0xd47236c
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xc
mov esi, dword [ebp - 0x14]
jmp 0x42c4db
lea ecx, [esi + 6]
cmp edi, ecx
jne 0x42c447
lea ecx, [eax + 0x79e45cc2]
lea ebx, [eax + edx]
add ebx, 0x79e45cc2
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xb2
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x14]
jmp 0x42c7b5
mov esi, dword [ebp - 0x14]
lea ecx, [esi + 7]
cmp edi, ecx
jne 0x42c943
lea ecx, [eax - 0x29c81d38]
lea ebx, [eax + edx]
add ebx, 0xd637e2c8
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x88
jmp 0x42c961
test esi, esi
je 0x42c969
lea ecx, [eax - 0x58b28434]
lea ebx, [eax + edx]
add ebx, 0xa74d7bcc
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, bl
add bl, 0xd8
mov esi, dword [ebp - 0x10]
jmp 0x42c4bf
mov byte [ebp + eax - 0x60], bl
xor esi, esi
jmp 0x42c88f
lea ebx, [eax + edx]
add ebx, 0x7f06a686
add eax, 0x7f06a686
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x56
jmp 0x42c3d8
mov eax, 0x10c33da
jmp 0x42c9a0
xor eax, eax
jmp 0x42c9a0
mov eax, 0x1416758
lea esi, [eax + ebp]
add esi, 0xffffffa0
xor eax, eax
mov edi, dword [ebp - 0x20]
mov dword [edi + 8], eax
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], 0xf
mov byte [edi + 8], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [ebp - 0x28]
push eax
push esi
call fcn.00450e50
lea ebx, [ebp - 0x29c]
mov dword [edi], ebx
lea eax, [ebp - 0x38c]
mov dword [edi + 4], eax
call fcn.0040cd09
add esp, 0x20
mov esp, dword [ebp - 0x24]
cmp dword [ebx + 0x14], 0x10
mov edi, dword [ebp + 8]
jb 0x42c9fa
mov ebx, dword [ebp - 0x29c]
mov esi, dword [edi + 0x10]
mov dword [ebp - 0x10], ebx
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, closesocket
sub ecx, esi
cmp ecx, eax
jb 0x432260
mov edx, dword [edi]
mov ecx, dword [edi + 0x14]
mov dword [ebp - 0x32c], 0
mov ebx, eax
add ebx, esi
cmp ebx, 0x10
mov dword [ebp - 0x18], eax
jb 0x42ca64
mov dword [ebp - 0x24], ecx
mov ecx, ebx
or ecx, 0xf
mov dword [ebp - 0x1c], edx
js 0x42ca73
cmp ecx, 0x17
mov edx, 0x16
mov dword [ebp - 0x14], ecx
cmovae edx, ecx
lea ecx, [edx + 1]
cmp edx, 0xfff
jae 0x42ca7f
mov dword [ebp - 0x14], edx
push ecx
call fcn.004716fe
jmp 0x42ca85
lea edi, [ebp - 0x32c]
mov dword [ebp - 0x14], 0xf
jmp 0x42ca96
mov dword [ebp - 0x14], closesocket
mov ecx, closesocket
push ecx
call fcn.0040130b
add esp, 4
mov edi, eax
mov dword [ebp - 0x32c], eax
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
cmp ecx, 0x10
mov eax, dword [ebp + 8]
cmovae eax, edx
mov dword [ebp - 0x31c], ebx
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x318], ecx
push esi
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, edi
push dword [ebp - 0x18]
push dword [ebp - 0x10]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
mov eax, dword [ebp - 0x1bc]
cmp eax, 0x10
jb 0x42cb0c
mov ecx, dword [ebp - 0x1d0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x42cb02
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
movsd xmm0, qword [ebp - 0x31c]
movsd qword [ebp - 0x1c0], xmm0
movups xmm0, xmmword [ebp - 0x32c]
movups xmmword [ebp - 0x1d0], xmm0
mov eax, dword [ebp - 0x288]
cmp eax, 0x10
jb 0x42cb68
mov ecx, dword [ebp - 0x29c]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x42cb5e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0x48], 0
movaps xmm0, xmmword [0x473570]
movups xmmword [ebp - 0x32c], xmm0
movaps xmm0, xmmword [0x473580]
movups xmmword [ebp - 0x31c], xmm0
movaps xmm0, xmmword [0x473590]
movups xmmword [ebp - 0x30c], xmm0
movaps xmm0, xmmword [0x4735a0]
movups xmmword [ebp - 0x2fc], xmm0
movaps xmm0, xmmword [0x4735b0]
movups xmmword [ebp - 0x2ec], xmm0
mov word [ebp - 0x2dc], 0xd15b
xorps xmm0, xmm0
movups xmmword [ebp - 0x2da], xmm0
movups xmmword [ebp - 0x2cd], xmm0
mov dword [ebp - 0x14], eax
call fcn.0046d640
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp dword [ebp - 0x10], eax
ja 0x42d03b
movzx edx, byte [ebp + eax - 0x32c]
lea edi, [ecx + 1]
cmp dword [ebp - 0x10], edi
jae 0x42cc64
cmp ecx, eax
ja 0x42d046
mov dword [ebp - 0x18], edi
mov esi, dword [ebp - 0x10]
add esi, ecx
cmp esi, eax
jbe 0x42ccaf
lea edi, [ecx + 6]
cmp dword [ebp - 0x10], edi
jne 0x42cd80
lea ecx, [eax + 0x6720429a]
lea ebx, [eax + edx]
add ebx, 0x6720429a
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xca
mov dword [ebp - 0x14], ebx
mov edi, dword [ebp - 0x18]
lea esi, [eax + 0x60903e5d]
lea ecx, [edx + eax]
add ecx, 0x60903e5d
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0x75
mov byte [ebp + eax - 0x32c], cl
jmp 0x42ceea
jne 0x42cc86
lea esi, [eax + 0x2d001d1]
lea ebx, [eax + edx]
add ebx, 0x2d001d1
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x49
mov dword [ebp - 0x14], ebx
jmp 0x42cd53
lea esi, [ecx + 2]
cmp dword [ebp - 0x10], esi
jne 0x42cd5a
mov dword [ebp - 0x18], edi
lea esi, [eax + 0x690043d]
lea ebx, [eax + edx]
add ebx, 0x690043d
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x55
jmp 0x42cced
lea edi, [eax + 0xf0009b]
lea ebx, [eax + edx]
add ebx, 0xf0009b
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xc3
mov dword [ebp - 0x14], ebx
cmp esi, 6
jne 0x42cdaf
lea esi, [eax + 0x6360402e]
lea ebx, [eax + edx]
add ebx, 0x6360402e
and esi, edx
add esi, esi
sub ebx, esi
sub bl, dl
add bl, 0xbe
mov dword [ebp - 0x14], ebx
lea esi, [eax + 0x645040c9]
lea ebx, [edx + eax]
add ebx, 0x645040c9
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x81
mov byte [ebp + eax - 0x32c], bl
movzx esi, bl
not ecx
add ecx, eax
mov eax, ecx
sub eax, esi
lea edi, [eax + 0x65404164]
and edi, edx
add edx, eax
add edx, 0x65404164
add edi, edi
sub edx, edi
add dl, 0x44
mov byte [ebp + eax - 0x32c], dl
mov eax, dword [ebp - 0x10]
add esi, eax
inc eax
mov dword [ebp - 0x10], eax
sub ecx, esi
movzx edx, byte [ebp + ecx - 0x32e]
add ecx, 0xfffffffe
mov eax, ecx
mov ecx, dword [ebp - 0x18]
add edx, ecx
jmp 0x42ce00
lea esi, [ecx + 3]
cmp dword [ebp - 0x10], esi
jne 0x42ce07
lea esi, [eax + 0xc3007df]
lea ebx, [eax + edx]
add ebx, 0xc3007df
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0xe7
jmp 0x42cdd5
lea esi, [ecx + 0x61]
cmp dword [ebp - 0x10], esi
mov edi, dword [ebp - 0x18]
jne 0x42ce2c
lea ecx, [eax + 0x690043d0]
lea ebx, [eax + edx]
add ebx, 0x690043d0
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x50
mov dword [ebp - 0x14], ebx
jmp 0x42ceea
mov edi, dword [ebp - 0x18]
cmp dword [ebp - 0x10], edi
jbe 0x42ce51
lea esi, [eax + 0x61803ef8]
lea ebx, [eax + edx]
add ebx, 0x61803ef8
and esi, edx
add esi, esi
sub ebx, esi
add bl, dl
add bl, 0x38
lea esi, [eax + 0x62703f93]
and esi, edx
add edx, eax
add edx, 0x62703f93
add esi, esi
sub edx, esi
add dl, bl
add dl, 0xfb
mov byte [ebp + eax - 0x32c], dl
add dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], ebx
movzx edx, bl
not edx
add eax, edx
jmp 0x42ceed
lea esi, [ecx + 7]
cmp dword [ebp - 0x10], esi
jne 0x42ce73
lea esi, [eax + 0xe100915]
lea ebx, [eax + edx]
add ebx, 0xe100915
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x6d
jmp 0x42cee5
lea esi, [ecx + 0x20]
cmp dword [ebp - 0x10], esi
jne 0x42ce9b
lea esi, [eax + 0x6ae04506]
lea ebx, [eax + edx]
add ebx, 0x6ae04506
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0xd6
jmp 0x42cee5
jne 0x42cec1
lea ecx, [eax + 0x3b102625]
lea ebx, [eax + edx]
add ebx, 0x3b102625
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0xfd
mov dword [ebp - 0x14], ebx
jmp 0x42cc40
mov dword [ebp - 0x18], edi
lea edi, [ecx + 6]
cmp dword [ebp - 0x10], edi
jne 0x42cefc
lea ecx, [eax + 0x11d00b81]
lea ebx, [eax + edx]
add ebx, 0x11d00b81
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, 0x79
jmp 0x42cc3a
cmp dword [ebp - 0x10], edi
jne 0x42cf37
lea esi, [eax + 0x6cc0463c]
lea ebx, [eax + edx]
add ebx, 0x6cc0463c
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x5c
jmp 0x42cdd5
lea esi, [ecx + 2]
cmp dword [ebp - 0x10], esi
jne 0x42cf69
lea esi, [eax + 0x3ed02891]
lea ebx, [eax + edx]
add ebx, 0x3ed02891
and esi, edx
add esi, esi
sub ebx, esi
add bl, 9
mov dword [ebp - 0x14], ebx
mov edi, ecx
dec eax
mov ecx, edi
inc eax
cmp eax, 0x6f
jb 0x42cbe5
jmp 0x42d042
cmp ecx, eax
ja 0x42d046
mov esi, dword [ebp - 0x10]
add esi, ecx
cmp esi, eax
ja 0x42cc19
lea edi, [ecx + 5]
cmp dword [ebp - 0x10], edi
jne 0x42ccca
lea esi, [eax + 0x32a020b2]
lea ebx, [eax + edx]
add ebx, 0x32a020b2
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x22
jmp 0x42cee5
lea edi, [ecx + 0x27]
cmp esi, edi
jb 0x42d01c
add ecx, 0x26
lea ebx, [eax + edx]
add ebx, 0x7cb05087
add eax, 0x7cb05087
and eax, edx
add eax, eax
sub ebx, eax
add bl, 0x4f
mov dword [ebp - 0x14], ebx
xor eax, eax
mov dword [ebp - 0x10], esi
jmp 0x42cbe5
lea esi, [ecx + 3]
cmp dword [ebp - 0x10], esi
jne 0x42cf8e
lea esi, [eax + 0x44702c33]
lea ebx, [eax + edx]
add ebx, 0x44702c33
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x9b
jmp 0x42cdf8
lea esi, [ecx + 7]
cmp dword [ebp - 0x10], esi
jne 0x42cfb3
lea esi, [eax + 0x46502d69]
lea ebx, [eax + edx]
add ebx, 0x46502d69
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x21
jmp 0x42cced
lea esi, [ecx + 6]
cmp dword [ebp - 0x10], esi
jne 0x42cfd8
lea esi, [eax + 0x4a102fd5]
lea ebx, [eax + edx]
add ebx, 0x4a102fd5
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x2d
jmp 0x42cc7e
cmp dword [ebp - 0x10], 0
jne 0x42cdbb
cmp ecx, 0x60
ja 0x42cffd
mov edx, dword [ebp - 0x14]
mov byte [ebp + eax - 0x32c], dl
mov dword [ebp - 0x10], 0
jmp 0x42ceed
lea ecx, [eax + 0x5fa03dc2]
lea ebx, [eax + edx]
add ebx, 0x5fa03dc2
and ecx, edx
add ecx, ecx
sub ebx, ecx
add bl, bl
add bl, 0x64
jmp 0x42ce6b
lea ecx, [eax + edx]
add ecx, 0x7ad04f51
add eax, 0x7ad04f51
and eax, edx
add eax, eax
sub ecx, eax
add cl, 0xc9
mov dword [ebp - 0x14], ecx
jmp 0x42cbd2
mov eax, 0x13068bf
jmp 0x42d04b
xor eax, eax
jmp 0x42d04b
mov eax, 0x1406824
lea esi, [eax + ebp]
add esi, 0xfffffcd4
xor eax, eax
lea edi, [ebp - 0x29c]
mov dword [edi], eax
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, edi
push eax
push esi
xor esi, esi
call fcn.00450e50
mov dword [ebp - 0x34], esi
mov edx, dword [0x47864c]
test edx, edx
jne 0x42d1eb
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0x3f38844
mov dword [ebp - 0x20], eax
test esi, esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], eax
je 0x42d0f6
mov esi, dword [eax + 0x2c]
add esi, 0xfffffff8
mov edx, 0xc22bd002
cmp si, 2
jb 0x42d0e8
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0xc22bd002
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42d0d5
mov esi, dword [ebp - 0x24]
cmp edx, esi
mov eax, dword [ebp - 0x1c]
jne 0x42d1d2
mov edx, dword [eax + 0x18]
mov eax, dword [edx + 0x3c]
mov edi, dword [edx + eax + 0x78]
test edi, edi
je 0x42d1a7
mov eax, dword [edx + eax + 0x7c]
mov dword [ebp - 0x28], eax
lea eax, [edx + edi]
mov dword [ebp - 0x10], eax
mov esi, dword [eax + 0x18]
lea eax, [edx + 1]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edi
sub esi, 1
jb 0x42d1a4
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, edx
mov edi, dword [eax + esi*4]
mov al, byte [edx + edi]
test al, al
je 0x42d154
add edi, dword [ebp - 0x18]
mov ebx, 0xc22bd002
movsx eax, al
xor eax, ebx
imul ebx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42d140
jmp 0x42d159
mov ebx, 0xc22bd002
cmp ebx, ecx
mov edi, dword [ebp - 0x14]
jne 0x42d121
mov eax, dword [edx + edi + 0x1c]
add eax, edx
mov ecx, dword [edx + edi + 0x24]
add ecx, edx
movzx ecx, word [ecx + esi*2]
mov eax, dword [eax + ecx*4]
add edx, eax
cmp edi, eax
jge 0x42d1e5
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, edx
jbe 0x42d1e5
mov al, byte [edx]
mov ecx, 0xc22bd002
mov esi, 0xc22bd002
cmp al, 0x2e
je 0x42d1ac
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edx + 1]
inc edx
jmp 0x42d18f
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
jmp 0x42d1d2
mov al, byte [edx + 1]
test al, al
je 0x42d1cd
add edx, 2
mov ecx, 0xc22bd002
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [edx]
inc edx
test al, al
jne 0x42d1bb
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
xor edx, edx
cmp eax, dword [ebp - 0x20]
je 0x42d1e5
cmp dword [eax + 0x18], 0
jne 0x42d0a6
mov dword [0x47864c], edx
cmp dword [ebp - 0x1bc], 0x10
jb 0x42d1fc
mov eax, dword [ebp - 0x1d0]
jmp 0x42d202
lea eax, [ebp - 0x1d0]
lea ecx, [ebp - 0x48]
push ecx
push eax
call edx
test eax, eax
jne 0x43217f
mov edi, dword [0x478650]
test edi, edi
jne 0x42d37c
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0xb483c810
xor esi, esi
mov dword [ebp - 0x20], eax
test esi, esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], eax
je 0x42d287
mov esi, dword [eax + 0x2c]
add esi, 0xfffffff8
mov edx, 0x99b1cbb2
cmp si, 2
jb 0x42d279
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0x99b1cbb2
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42d266
mov esi, dword [ebp - 0x24]
cmp edx, esi
mov eax, dword [ebp - 0x1c]
jne 0x42d363
mov edi, dword [eax + 0x18]
mov eax, dword [edi + 0x3c]
mov edx, dword [edi + eax + 0x78]
test edx, edx
je 0x42d338
mov eax, dword [edi + eax + 0x7c]
mov dword [ebp - 0x28], eax
lea eax, [edi + edx]
mov dword [ebp - 0x10], eax
mov esi, dword [eax + 0x18]
lea eax, [edi + 1]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
sub esi, 1
jb 0x42d335
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, edi
mov ebx, dword [eax + esi*4]
mov al, byte [edi + ebx]
test al, al
je 0x42d2e5
add ebx, dword [ebp - 0x18]
mov edx, 0x99b1cbb2
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ebx]
inc ebx
test al, al
jne 0x42d2d1
jmp 0x42d2ea
mov edx, 0x99b1cbb2
cmp edx, ecx
mov edx, dword [ebp - 0x14]
jne 0x42d2b2
mov eax, dword [edi + edx + 0x1c]
add eax, edi
mov ecx, dword [edi + edx + 0x24]
add ecx, edi
movzx ecx, word [ecx + esi*2]
mov eax, dword [eax + ecx*4]
add edi, eax
cmp edx, eax
jge 0x42d376
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, edi
jbe 0x42d376
mov al, byte [edi]
mov ecx, 0x99b1cbb2
mov esi, 0x99b1cbb2
cmp al, 0x2e
je 0x42d33d
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edi + 1]
inc edi
jmp 0x42d320
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
jmp 0x42d363
mov al, byte [edi + 1]
test al, al
je 0x42d35e
add edi, 2
mov ecx, 0x99b1cbb2
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42d34c
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
xor edi, edi
cmp eax, dword [ebp - 0x20]
je 0x42d376
cmp dword [eax + 0x18], 0
jne 0x42d237
mov dword [0x478650], edi
cmp dword [ebp - 0x288], 0x10
lea ecx, [ebp - 0x29c]
jb 0x42d391
mov ecx, dword [ebp - 0x29c]
lea eax, [ebp - 0x34]
push 0
push eax
push 0xffffffffffffffff
push ecx
push dword [ebp - 0x48]
call edi
test eax, eax
je 0x431884
mov esi, dword [0x478654]
test esi, esi
jne 0x42d514
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0x2deffe81
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x42d41f
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0xce64da09
cmp si, 2
jb 0x42d411
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0xce64da09
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42d3fe
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x42d4fb
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x42d4fb
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x42d4cd
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x42d47d
add edi, dword [ebp - 0x14]
mov edx, 0xce64da09
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42d469
jmp 0x42d482
mov edx, 0xce64da09
cmp edx, ecx
jne 0x42d44a
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x42d50e
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x42d50e
mov al, byte [esi]
mov ecx, 0xce64da09
mov edi, 0xce64da09
cmp al, 0x2e
je 0x42d4d5
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x42d4b8
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x42d4fb
mov al, byte [esi + 1]
test al, al
je 0x42d4f6
add esi, 2
mov ecx, 0xce64da09
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x42d4e4
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x42d50e
cmp dword [edx + 0x18], 0
jne 0x42d3cf
mov dword [0x478654], esi
push dword [ebp - 0x48]
call esi
jmp 0x43217f
mov esi, dword [0x47865c]
test esi, esi
jne 0x42d68b
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0x52a61ee0
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x42d596
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0xe81a3f16
cmp si, 2
jb 0x42d588
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0xe81a3f16
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42d575
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x42d672
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x42d672
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x42d644
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x42d5f4
add edi, dword [ebp - 0x14]
mov edx, 0xe81a3f16
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42d5e0
jmp 0x42d5f9
mov edx, 0xe81a3f16
cmp edx, ecx
jne 0x42d5c1
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x42d685
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x42d685
mov al, byte [esi]
mov ecx, 0xe81a3f16
mov edi, 0xe81a3f16
cmp al, 0x2e
je 0x42d64c
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x42d62f
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x42d672
mov al, byte [esi + 1]
test al, al
je 0x42d66d
add esi, 2
mov ecx, 0xe81a3f16
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x42d65b
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x42d685
cmp dword [edx + 0x18], 0
jne 0x42d546
mov dword [0x47865c], esi
push 0
push dword [ebp - 0x34]
call esi
mov dword [ebp - 0x40], eax
mov esi, dword [0x478660]
test esi, esi
jne 0x42d802
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0xf3d3e012
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x42d70d
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0x88bdb338
cmp si, 2
jb 0x42d6ff
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0x88bdb338
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42d6ec
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x42d7e9
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x42d7e9
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x42d7bb
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x42d76b
add edi, dword [ebp - 0x14]
mov edx, 0x88bdb338
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42d757
jmp 0x42d770
mov edx, 0x88bdb338
cmp edx, ecx
jne 0x42d738
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x42d7fc
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x42d7fc
mov al, byte [esi]
mov ecx, 0x88bdb338
mov edi, 0x88bdb338
cmp al, 0x2e
je 0x42d7c3
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x42d7a6
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x42d7e9
mov al, byte [esi + 1]
test al, al
je 0x42d7e4
add esi, 2
mov ecx, 0x88bdb338
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x42d7d2
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x42d7fc
cmp dword [edx + 0x18], 0
jne 0x42d6bd
mov dword [0x478660], esi
push 1
push dword [ebp - 0x34]
call esi
mov dword [ebp - 0x3c], eax
mov esi, dword [0x478664]
test esi, esi
jne 0x42d979
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0xa99348f4
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x42d884
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0x53ef3ba
cmp si, 2
jb 0x42d876
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0x53ef3ba
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42d863
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x42d960
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x42d960
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x42d932
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x42d8e2
add edi, dword [ebp - 0x14]
mov edx, 0x53ef3ba
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42d8ce
jmp 0x42d8e7
mov edx, 0x53ef3ba
cmp edx, ecx
jne 0x42d8af
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x42d973
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x42d973
mov al, byte [esi]
mov ecx, 0x53ef3ba
mov edi, 0x53ef3ba
cmp al, 0x2e
je 0x42d93a
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x42d91d
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x42d960
mov al, byte [esi + 1]
test al, al
je 0x42d95b
add esi, 2
mov ecx, 0x53ef3ba
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x42d949
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x42d973
cmp dword [edx + 0x18], 0
jne 0x42d834
mov dword [0x478664], esi
push 2
push dword [ebp - 0x34]
call esi
mov dword [ebp - 0x30], eax
mov esi, dword [0x478668]
test esi, esi
jne 0x42daf0
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0xf3a4ef42
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x42d9fb
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0xf9b663c8
cmp si, 2
jb 0x42d9ed
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0xf9b663c8
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42d9da
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x42dad7
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x42dad7
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x42daa9
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x42da59
add edi, dword [ebp - 0x14]
mov edx, 0xf9b663c8
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42da45
jmp 0x42da5e
mov edx, 0xf9b663c8
cmp edx, ecx
jne 0x42da26
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x42daea
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x42daea
mov al, byte [esi]
mov ecx, 0xf9b663c8
mov edi, 0xf9b663c8
cmp al, 0x2e
je 0x42dab1
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x42da94
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x42dad7
mov al, byte [esi + 1]
test al, al
je 0x42dad2
add esi, 2
mov ecx, 0xf9b663c8
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x42dac0
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x42daea
cmp dword [edx + 0x18], 0
jne 0x42d9ab
mov dword [0x478668], esi
push 3
push dword [ebp - 0x34]
call esi
mov dword [ebp - 0x38], eax
mov esi, dword [0x47866c]
test esi, esi
jne 0x42dc67
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0x281b38f0
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x42db72
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0xf81f29c6
cmp si, 2
jb 0x42db64
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0xf81f29c6
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42db51
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x42dc4e
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x42dc4e
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x42dc20
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x42dbd0
add edi, dword [ebp - 0x14]
mov edx, 0xf81f29c6
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42dbbc
jmp 0x42dbd5
mov edx, 0xf81f29c6
cmp edx, ecx
jne 0x42db9d
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x42dc61
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x42dc61
mov al, byte [esi]
mov ecx, 0xf81f29c6
mov edi, 0xf81f29c6
cmp al, 0x2e
je 0x42dc28
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x42dc0b
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x42dc4e
mov al, byte [esi + 1]
test al, al
je 0x42dc49
add esi, 2
mov ecx, 0xf81f29c6
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x42dc37
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x42dc61
cmp dword [edx + 0x18], 0
jne 0x42db22
mov dword [0x47866c], esi
push 4
push dword [ebp - 0x34]
call esi
mov dword [ebp - 0x44], eax
mov edi, dword [0x478670]
test edi, edi
jne 0x42dddc
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0x2eba6282
xor esi, esi
mov dword [ebp - 0x20], eax
test esi, esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], eax
je 0x42dce7
mov esi, dword [eax + 0x2c]
add esi, 0xfffffff8
mov edx, 0x99b02088
cmp si, 2
jb 0x42dcd9
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0x99b02088
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x42dcc6
mov esi, dword [ebp - 0x24]
cmp edx, esi
mov eax, dword [ebp - 0x1c]
jne 0x42ddc3
mov edi, dword [eax + 0x18]
mov eax, dword [edi + 0x3c]
mov edx, dword [edi + eax + 0x78]
test edx, edx
je 0x42dd98
mov eax, dword [edi + eax + 0x7c]
mov dword [ebp - 0x28], eax
lea eax, [edi + edx]
mov dword [ebp - 0x10], eax
mov esi, dword [eax + 0x18]
lea eax, [edi + 1]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
sub esi, 1
jb 0x42dd95
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, edi
mov ebx, dword [eax + esi*4]
mov al, byte [edi + ebx]
test al, al
je 0x42dd45
add ebx, dword [ebp - 0x18]
mov edx, 0x99b02088
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ebx]
inc ebx
test al, al
jne 0x42dd31
jmp 0x42dd4a
mov edx, 0x99b02088
cmp edx, ecx
mov edx, dword [ebp - 0x14]
jne 0x42dd12
mov eax, dword [edi + edx + 0x1c]
add eax, edi
mov ecx, dword [edi + edx + 0x24]
add ecx, edi
movzx ecx, word [ecx + esi*2]
mov eax, dword [eax + ecx*4]
add edi, eax
cmp edx, eax
jge 0x42ddd6
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, edi
jbe 0x42ddd6
mov al, byte [edi]
mov ecx, 0x99b02088
mov esi, 0x99b02088
cmp al, 0x2e
je 0x42dd9d
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edi + 1]
inc edi
jmp 0x42dd80
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
jmp 0x42ddc3
mov al, byte [edi + 1]
test al, al
je 0x42ddbe
add edi, 2
mov ecx, 0x99b02088
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x42ddac
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
xor edi, edi
cmp eax, dword [ebp - 0x20]
je 0x42ddd6
cmp dword [eax + 0x18], 0
jne 0x42dc97
mov dword [0x478670], edi
push 5
push dword [ebp - 0x34]
call edi
mov esi, eax
mov ebx, dword [0x478674]
test ebx, ebx
jne 0x42df72
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0x51cbab17
xor edi, edi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], esi
test edi, edi
mov dword [ebp - 0x1c], edi
je 0x42de62
mov dword [ebp - 0x10], ecx
mov ebx, eax
mov ecx, dword [eax + 0x2c]
add ecx, 0xfffffff8
mov edx, 0xc215a53
cmp cx, 2
jb 0x42de4f
mov eax, dword [ebx + 0x30]
movzx esi, cx
shr esi, 1
add esi, esi
mov edx, 0xc215a53
xor ecx, ecx
movsx edi, byte [eax + ecx]
xor edi, edx
imul edx, edi, 0x1000193
add ecx, 2
cmp esi, ecx
jne 0x42de3c
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x10]
mov eax, ebx
jne 0x42df59
mov dword [ebp - 0x20], eax
mov ebx, dword [eax + 0x18]
mov eax, dword [ebx + 0x3c]
mov edx, dword [ebx + eax + 0x78]
test edx, edx
je 0x42df56
mov eax, dword [ebx + eax + 0x7c]
mov dword [ebp - 0x2c], eax
lea eax, [ebx + edx]
mov dword [ebp - 0x10], eax
mov edi, dword [eax + 0x18]
lea eax, [ebx + 1]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
sub edi, 1
jb 0x42df50
mov esi, ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, ebx
mov eax, dword [eax + edi*4]
mov cl, byte [ebx + eax]
test cl, cl
je 0x42dec9
add eax, dword [ebp - 0x18]
mov edx, 0xc215a53
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42deb5
jmp 0x42dece
mov edx, 0xc215a53
mov ecx, esi
cmp edx, esi
mov edx, dword [ebp - 0x14]
jne 0x42de90
mov eax, dword [ebx + edx + 0x1c]
add eax, ebx
mov ecx, dword [ebx + edx + 0x24]
add ecx, ebx
movzx ecx, word [ecx + edi*2]
mov eax, dword [eax + ecx*4]
add ebx, eax
cmp edx, eax
jge 0x431801
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x2c]
cmp eax, ebx
jbe 0x431801
mov al, byte [ebx]
mov ecx, 0xc215a53
cmp al, 0x2e
mov esi, dword [ebp - 0x28]
mov edi, 0xc215a53
je 0x42df28
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [ebx + 1]
inc ebx
cmp al, 0x2e
jne 0x42df15
mov al, byte [ebx + 1]
test al, al
je 0x42df49
add ebx, 2
mov ecx, 0xc215a53
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [ebx]
inc ebx
test al, al
jne 0x42df37
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
jmp 0x42df59
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
xor ebx, ebx
cmp eax, dword [ebp - 0x24]
je 0x42df6c
cmp dword [eax + 0x18], 0
jne 0x42de0e
mov dword [0x478674], ebx
push 5
push dword [ebp - 0x34]
call ebx
push eax
push esi
lea eax, [ebp - 0x2bc]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.004107d7
add esp, 0x10
xor ebx, ebx
mov dword [ebp - 0x168], ebx
mov dword [ebp - 0x158], ebx
mov esi, 0xf
mov dword [ebp - 0x154], esi
mov byte [ebp - 0x168], bl
mov edi, dword [ebp - 0x40]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea ecx, [ebp - 0x168]
push eax
push edi
call fcn.00450e50
mov dword [ebp - 0x284], ebx
mov dword [ebp - 0x274], ebx
mov dword [ebp - 0x270], esi
mov byte [ebp - 0x284], bl
mov edi, dword [ebp - 0x3c]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea ecx, [ebp - 0x284]
push eax
push edi
call fcn.00450e50
mov dword [ebp - 0x374], ebx
mov dword [ebp - 0x364], ebx
mov dword [ebp - 0x360], esi
mov byte [ebp - 0x374], bl
mov edi, dword [ebp - 0x30]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea ecx, [ebp - 0x374]
push eax
push edi
call fcn.00450e50
mov dword [ebp - 0x26c], ebx
mov dword [ebp - 0x25c], ebx
mov dword [ebp - 0x258], esi
mov byte [ebp - 0x26c], bl
mov edi, dword [ebp - 0x38]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea ecx, [ebp - 0x26c]
push eax
push edi
call fcn.00450e50
mov dword [ebp - 0x254], ebx
mov dword [ebp - 0x244], ebx
mov dword [ebp - 0x240], esi
mov byte [ebp - 0x254], bl
mov esi, dword [ebp - 0x44]
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea ecx, [ebp - 0x254]
push eax
push esi
call fcn.00450e50
mov word [ebp - 0x1b8], 0x8d9a
lea eax, [ebp - 0x1b6]
mov dword [eax + 0xa], ebx
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 6], ebx
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov eax, dword [eax]
xor ecx, ecx
cmp edi, ecx
ja 0x42e31f
mov bl, byte [ebp + ecx - 0x1b8]
movzx edx, bl
lea esi, [eax + 1]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
cmp edi, esi
jae 0x42e0f7
cmp eax, ecx
ja 0x42e32a
mov edi, dword [ebp - 0x10]
lea esi, [edi + eax]
cmp esi, ecx
jbe 0x42e134
lea esi, [eax + 0xa]
cmp edi, esi
je 0x42e266
cmp edi, dword [ebp - 0x14]
je 0x42e139
jmp 0x42e0a4
jne 0x42e100
mov esi, eax
jmp 0x42e19a
lea esi, [eax + 3]
mov edi, dword [ebp - 0x10]
cmp edi, esi
je 0x42e139
lea esi, [eax + 2]
cmp edi, esi
jne 0x42e1ea
lea esi, [ecx - 0x6df5e52e]
lea ebx, [ecx + edx]
add ebx, 0x920a1ad2
and esi, edx
mov edx, ebx
add esi, esi
sub edx, esi
add dl, 0x42
jmp 0x42e232
cmp esi, 6
jne 0x42e1a9
lea esi, [ecx + 0x122cd16]
lea ebx, [ecx + edx]
add ebx, 0x122cd16
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x66
mov byte [ebp + ecx - 0x1b8], bl
movzx esi, bl
not eax
add eax, ecx
mov ecx, eax
sub ecx, esi
lea ebx, [ecx - 0x2786be28]
and ebx, edx
add edx, ecx
add edx, 0xd87941d8
add ebx, ebx
sub edx, ebx
add dl, 0x18
mov byte [ebp + ecx - 0x1b8], dl
add esi, edi
inc edi
mov dword [ebp - 0x10], edi
sub eax, esi
mov bl, byte [ebp + eax - 0x1ba]
add eax, 0xfffffffe
mov ecx, eax
mov esi, dword [ebp - 0x14]
mov eax, esi
movzx edx, bl
add edx, esi
add ecx, edx
mov edi, dword [ebp - 0x10]
jmp 0x42e26a
cmp edi, dword [ebp - 0x14]
je 0x42e246
lea ebx, [eax + 2]
mov edi, dword [ebp - 0x10]
cmp edi, ebx
je 0x42e269
lea ebx, [eax + 3]
cmp edi, ebx
jne 0x42e279
lea edi, [ecx + 0xa4d784a]
lea ebx, [ecx + edx]
add ebx, 0xa4d784a
and edi, edx
add edi, edi
sub ebx, edi
add bl, 0xfa
mov dword [ebp - 0x14], ebx
mov edi, esi
jmp 0x42e20e
lea esi, [eax + 4]
cmp edi, esi
jne 0x42e23b
lea esi, [ecx - 0x109c1226]
lea ebx, [ecx + edx]
add ebx, 0xef63edda
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0xa
mov dword [ebp - 0x14], ebx
add edi, eax
lea esi, [ecx + 0x5275e392]
lea ebx, [edx + ecx]
add ebx, 0x5275e392
and esi, edx
add esi, esi
sub ebx, esi
mov edx, dword [ebp - 0x14]
add bl, dl
add bl, 2
mov byte [ebp + ecx - 0x1b8], bl
movzx edx, dl
not edx
add ecx, edx
jmp 0x42e26a
lea esi, [eax + 5]
cmp edi, esi
jne 0x42e0d3
lea esi, [ecx - 0x5c3705f2]
lea eax, [edx + ecx]
add eax, 0xa3c8fa0e
and esi, edx
add esi, esi
sub eax, esi
add al, 0x9e
mov byte [ebp + ecx - 0x1b8], al
mov edi, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
dec ecx
inc ecx
cmp ecx, 0x10
jb 0x42e0b4
jmp 0x42e326
lea ebx, [eax + 4]
cmp edi, ebx
jne 0x42e29e
lea edi, [ecx - 0x47059e32]
lea ebx, [ecx + edx]
add ebx, 0xb8fa61ce
and edi, edx
mov edx, ebx
add edi, edi
sub edx, edi
add dl, 0x5e
mov edi, esi
jmp 0x42e232
lea esi, [eax + 5]
cmp edi, esi
jne 0x42e2c7
lea esi, [ecx + 0x67a74b52]
lea edi, [ecx + edx]
add edi, 0x67a74b52
and esi, edx
mov edx, edi
add esi, esi
sub edx, esi
mov edi, dword [ebp - 0x10]
add dl, 0xc2
jmp 0x42e232
cmp edi, ebx
jbe 0x42e2e5
lea esi, [ecx - 0x64e99dc]
lea ebx, [ecx + edx]
add ebx, 0xf9b16624
and esi, edx
add esi, esi
sub ebx, esi
add bl, 4
jmp 0x42e313
lea esi, [eax + 6]
cmp edi, esi
je 0x42e269
lea esi, [eax + 9]
cmp edi, esi
je 0x42e246
lea esi, [ecx - 0x28a98b3e]
lea ebx, [ecx + edx]
add ebx, 0xd75674c2
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0xb2
mov byte [ebp + ecx - 0x1b8], bl
jmp 0x42e1a1
mov eax, 0x12ce71a
jmp 0x42e32f
xor eax, eax
jmp 0x42e32f
mov eax, 0x1567258
cmp dword [ebp - 0x4c], 0x10
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x24], ecx
jb 0x42e341
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x24], ecx
add eax, ebp
add eax, 0xfffffe48
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x1f6]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov word [ebp - 0x1f8], 0x3521
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x42e62c
mov bl, byte [ebp + eax - 0x1f8]
movzx edx, bl
mov dword [ebp - 0x10], edx
lea edi, [ecx + 1]
cmp esi, edi
jae 0x42e3bf
cmp ecx, eax
ja 0x42e637
lea edx, [esi + ecx]
mov dword [ebp - 0x14], edx
cmp edx, eax
jbe 0x42e3d8
lea edx, [ecx + 3]
cmp esi, edx
je 0x42e596
lea edx, [ecx + 4]
cmp esi, edx
jne 0x42e4fc
mov edi, ecx
jmp 0x42e5bc
je 0x42e4e0
lea edx, [ecx + 2]
cmp esi, edx
jne 0x42e4ec
mov edi, dword [ebp - 0x10]
jmp 0x42e4b4
lea edx, [ecx + 9]
cmp esi, edx
mov dword [ebp - 0x18], edi
jae 0x42e475
mov dword [ebp - 0x1c], ecx
lea edx, [eax + 0x19074359]
mov edi, dword [ebp - 0x10]
lea ecx, [eax + edi]
add ecx, 0x19074359
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x91
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x14], 9
mov edi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
je 0x42e484
cmp esi, edi
jbe 0x42e521
lea edx, [eax - 0x944f3cb]
mov edi, dword [ebp - 0x10]
mov dword [ebp - 0x1c], ecx
lea ecx, [eax + edi]
add ecx, 0xf6bb0c35
and edx, edi
mov edi, dword [ebp - 0x18]
add edx, edx
sub ecx, edx
add cl, 0x8d
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x1c]
cmp esi, edi
je 0x42e4e0
lea edx, [ecx + 3]
cmp esi, edx
jne 0x42e5cb
lea edx, [eax - 0x163cc04]
mov esi, dword [ebp - 0x10]
lea ebx, [eax + esi]
add ebx, 0xfe9c33fc
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x1c
jmp 0x42e583
cmp esi, edi
je 0x42e4e0
lea edx, [ecx + 3]
cmp esi, edx
jne 0x42e542
lea edx, [eax + 0x76092633]
mov edi, dword [ebp - 0x10]
lea ebx, [eax + edi]
add ebx, 0x76092633
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0x9b
mov byte [ebp + eax - 0x1f8], bl
not ecx
add ecx, eax
movzx eax, bl
sub ecx, eax
mov eax, ecx
mov ecx, dword [ebp - 0x18]
lea edx, [eax - 0x70ef9674]
lea ebx, [eax + edi]
add ebx, 0x8f10698c
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0x2c
mov byte [ebp + eax - 0x1f8], bl
sub eax, esi
inc esi
mov bl, byte [ebp + eax - 0x1fa]
add eax, 0xfffffffe
movzx edx, bl
add edx, ecx
add eax, edx
jmp 0x42e5bf
lea edx, [ecx + 5]
cmp esi, edx
jne 0x42e390
jmp 0x42e596
cmp esi, edi
jne 0x42e364
lea edx, [eax - 0x76a6f4fa]
mov esi, dword [ebp - 0x10]
lea ebx, [eax + esi]
add ebx, 0x89590b06
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0xd6
jmp 0x42e583
je 0x42e596
lea edx, [ecx + 2]
cmp esi, edx
je 0x42e3b8
lea edx, [ecx + 3]
cmp esi, edx
jne 0x42e61c
mov dl, 0x15
mov esi, 0xbef526fd
jmp 0x42e550
lea edx, [ecx + 5]
cmp esi, edx
jne 0x42e58f
mov dl, 0x74
mov esi, 0x1579ae14
add esi, eax
mov edi, dword [ebp - 0x10]
lea ebx, [esi + edi]
and esi, edi
add esi, esi
sub ebx, esi
add bl, dl
lea edx, [eax + 0x43fa9f81]
lea esi, [eax + edi]
add esi, 0x43fa9f81
and edx, edi
add edx, edx
sub esi, edx
mov edx, esi
add dl, bl
add dl, 0x79
mov byte [ebp + eax - 0x1f8], dl
movzx edx, bl
not edx
add eax, edx
mov esi, dword [ebp - 0x14]
jmp 0x42e5bf
lea edx, [ecx + 6]
cmp esi, edx
jne 0x42e5f9
lea edx, [eax + 0x11ec18cf]
mov ebx, edi
mov edi, dword [ebp - 0x10]
lea ecx, [edi + eax]
add ecx, 0x11ec18cf
and edx, edi
mov edi, ebx
add edx, edx
sub ecx, edx
add cl, 0x57
mov byte [ebp + eax - 0x1f8], cl
dec eax
mov ecx, edi
inc eax
cmp eax, 0x13
jb 0x42e374
jmp 0x42e633
lea edx, [ecx + 4]
cmp esi, edx
je 0x42e3b8
lea edx, [ecx + 2]
cmp esi, edx
je 0x42e5bc
cmp ecx, 4
ja 0x42e596
lea edx, [ecx + 8]
cmp esi, edx
je 0x42e596
mov edx, ecx
mov ecx, dword [ebp - 0x20]
mov byte [ebp + eax - 0x1f8], cl
mov ecx, edx
jmp 0x42e5bf
mov dword [ebp - 0x1c], ecx
lea edx, [eax + 0xd98864d]
mov edi, dword [ebp - 0x10]
lea ecx, [eax + edi]
add ecx, 0xd98864d
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0xe5
jmp 0x42e404
lea edx, [ecx + 5]
cmp esi, edx
jne 0x42e442
jmp 0x42e484
mov eax, 0x688325
jmp 0x42e63c
xor eax, eax
jmp 0x42e63c
mov eax, 0x1613fcc
add eax, ebp
add eax, 0xfffffe08
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x23a]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0xf], 0
mov word [ebp - 0x23c], 0xc5d1
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, esi
mov esi, dword [eax]
xor eax, eax
cmp ecx, eax
ja 0x42e99a
mov bl, byte [ebp + eax - 0x23c]
movzx edx, bl
mov dword [ebp - 0x10], edx
lea edi, [esi + 1]
cmp ecx, edi
jae 0x42e6de
cmp esi, eax
ja 0x42e9a5
lea edx, [ecx + esi]
mov dword [ebp - 0x18], edx
cmp edx, eax
jbe 0x42e6fa
lea edx, [esi + 6]
cmp ecx, edx
je 0x42e908
lea edx, [esi + 3]
cmp ecx, edx
jne 0x42e840
lea edx, [eax - 0xfbebd0c]
mov edi, dword [ebp - 0x10]
lea ebx, [eax + edi]
add ebx, 0xf04142f4
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0x54
mov dword [ebp - 0x1c], ebx
mov ecx, dword [ebp - 0x18]
jmp 0x42e817
je 0x42e7e6
lea edx, [esi + 2]
cmp ecx, edx
jne 0x42e7f0
mov dword [ebp - 0x14], ecx
mov edi, dword [ebp - 0x10]
jmp 0x42e7b7
lea edx, [esi + 9]
cmp ecx, edx
mov dword [ebp - 0x14], ecx
jae 0x42e774
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], edi
lea edx, [eax + 0x13b9f121]
mov edi, dword [ebp - 0x10]
lea ecx, [eax + edi]
add ecx, 0x13b9f121
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x19
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x18], 4
mov edi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
je 0x42e786
cmp ecx, edi
je 0x42e875
lea edx, [esi + 2]
cmp ecx, edx
je 0x42e906
lea edx, [esi + 3]
cmp ecx, edx
jne 0x42e91a
lea edx, [eax - 0x5ffa3d97]
mov edi, dword [ebp - 0x10]
lea ebx, [eax + edi]
add ebx, 0xa005c269
and edx, edi
add edx, edx
sub ebx, edx
mov edx, ebx
add dl, 0x21
jmp 0x42e8c8
cmp ecx, edi
je 0x42e7e6
mov dword [ebp - 0x20], edx
lea edx, [esi + 3]
cmp ecx, edx
jne 0x42e8a1
lea edx, [eax + 0x3eb7c8cb]
mov ecx, edi
mov edi, dword [ebp - 0x10]
lea ebx, [eax + edi]
add ebx, 0x3eb7c8cb
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0x73
mov byte [ebp + eax - 0x23c], bl
movzx edx, bl
not esi
add esi, eax
sub esi, edx
mov eax, esi
mov esi, ecx
lea ecx, [eax + 0x5271b9ec]
and ecx, edi
lea edx, [eax + edi]
add edx, 0x5271b9ec
add ecx, ecx
sub edx, ecx
add dl, 0x8c
mov byte [ebp + eax - 0x23c], dl
mov ecx, dword [ebp - 0x14]
sub eax, ecx
inc ecx
mov bl, byte [ebp + eax - 0x23e]
add eax, 0xfffffffe
movzx edx, bl
add edx, esi
jmp 0x42e8cd
lea edx, [esi + 3]
cmp ecx, edx
jne 0x42e86a
lea edx, [eax + 0x713ead]
mov edi, dword [ebp - 0x10]
lea ebx, [eax + edi]
add ebx, 0x713ead
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0x45
mov dword [ebp - 0x1c], ebx
add ecx, esi
lea edx, [eax + 0x1743e689]
lea ebx, [edi + eax]
add ebx, 0x1743e689
and edx, edi
add edx, edx
sub ebx, edx
mov edx, dword [ebp - 0x1c]
add bl, dl
add bl, 0x41
mov byte [ebp + eax - 0x23c], bl
jmp 0x42e8c8
lea edx, [esi + 4]
cmp ecx, edx
jne 0x42e8d1
lea edx, [eax + 0x3f290778]
mov edi, dword [ebp - 0x10]
lea ebx, [eax + edi]
add ebx, 0x3f290778
and edx, edi
add edx, edx
sub ebx, edx
mov edx, ebx
add dl, 0xb8
jmp 0x42e8c8
lea edx, [esi + 5]
cmp ecx, edx
jne 0x42e690
lea edx, [eax - 0x102ffbb9]
mov ebx, edi
mov edi, dword [ebp - 0x10]
mov esi, ecx
lea ecx, [edi + eax]
add ecx, 0xefd00447
and edx, edi
mov edi, ebx
add edx, edx
sub ecx, edx
add cl, 0xf
mov byte [ebp + eax - 0x23c], cl
mov ecx, esi
jmp 0x42e908
lea edx, [esi + 2]
cmp ecx, edx
jne 0x42e8ff
lea edx, [eax - 0x25aee78e]
mov ecx, dword [ebp - 0x10]
lea edi, [eax + ecx]
add edi, 0xda511872
and edx, ecx
add edx, edx
sub edi, edx
mov edx, edi
add dl, 0xe2
mov ecx, dword [ebp - 0x18]
movzx edx, dl
not edx
add eax, edx
jmp 0x42e90b
cmp ecx, edi
je 0x42e6ef
lea ecx, [esi + 0x80]
lea edx, [esi + 0x8a]
add esi, 0x90
mov eax, 0
cmp ecx, esi
mov esi, edx
jae 0x42e674
jmp 0x42e662
lea edx, [esi + 7]
cmp ecx, edx
jne 0x42e959
mov edi, esi
dec eax
mov esi, edi
inc eax
cmp eax, 0x15
jb 0x42e674
jmp 0x42e9a1
lea edx, [esi + 4]
cmp ecx, edx
je 0x42e786
lea edx, [esi + 5]
cmp ecx, edx
je 0x42e7e6
cmp ecx, dword [ebp - 0x20]
jbe 0x42e97c
lea edx, [eax + 0x518f3c92]
mov edi, dword [ebp - 0x10]
mov ebx, ecx
lea ecx, [eax + edi]
add ecx, 0x518f3c92
and edx, edi
add edx, edx
sub ecx, edx
add cl, 2
mov dword [ebp - 0x28], ecx
mov ecx, ebx
jmp 0x42e987
mov dword [ebp - 0x1c], edi
lea edx, [eax - 0x61bf384b]
mov edi, dword [ebp - 0x10]
lea ecx, [eax + edi]
add ecx, 0x9e40c7b5
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0xd
jmp 0x42e725
lea edx, [esi + 6]
cmp ecx, edx
je 0x42e875
mov edx, ecx
mov ecx, dword [ebp - 0x28]
mov byte [ebp + eax - 0x23c], cl
mov ecx, edx
jmp 0x42e90b
mov eax, 0x127f34d
jmp 0x42e9aa
xor eax, eax
jmp 0x42e9aa
mov eax, 0x16e022c
add eax, ebp
add eax, 0xfffffdc4
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x20a]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov word [eax + 0x10], 0
mov word [ebp - 0x20c], 0x4db5
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x42ec6f
mov bl, byte [ebp + eax - 0x20c]
movzx edx, bl
lea edi, [ecx + 1]
cmp esi, edi
jae 0x42ea4e
cmp ecx, eax
ja 0x42ec7a
mov dword [ebp - 0x14], edx
lea edx, [esi + ecx]
cmp edx, eax
jbe 0x42ea84
lea edx, [ecx + 0x10]
cmp esi, edx
cmovne edi, ecx
je 0x42ebed
lea edx, [ecx + 6]
cmp esi, edx
je 0x42ebed
lea edx, [ecx + 2]
cmp esi, edx
jne 0x42eb93
mov dword [ebp - 0x10], esi
lea edi, [eax - 0x114788]
mov edx, dword [ebp - 0x14]
lea ebx, [eax + edx]
add ebx, 0xffeeb878
and edi, edx
mov byte [ebp - 0x18], 0xb8
jmp 0x42eb5e
je 0x42eb9e
mov dword [ebp - 0x10], edi
mov edi, edx
lea edx, [ecx + 2]
cmp esi, edx
jne 0x42eb36
mov dword [ebp - 0x10], esi
lea edx, [eax - 0x4f7465ae]
lea ebx, [eax + edi]
add ebx, 0xb08b9a52
and edx, edi
add edx, edx
sub ebx, edx
add bl, 0xc2
jmp 0x42eb87
cmp edx, 0x10
jne 0x42eaef
mov dword [ebp - 0x10], esi
lea ebx, [eax + 0x5836ae92]
mov esi, dword [ebp - 0x14]
lea edx, [eax + esi]
add edx, 0x5836ae92
and ebx, esi
add ebx, ebx
sub edx, ebx
add dl, 2
mov byte [ebp + eax - 0x20c], dl
movzx edx, dl
not ecx
add ecx, eax
sub ecx, edx
mov eax, ecx
lea ecx, [eax - 0x235f8938]
and ecx, esi
lea edx, [eax + esi]
add edx, 0xdca076c8
add ecx, ecx
sub edx, ecx
add dl, 0x88
mov byte [ebp + eax - 0x20c], dl
mov esi, dword [ebp - 0x10]
sub eax, esi
inc esi
mov bl, byte [ebp + eax - 0x20e]
add eax, 0xfffffffe
mov ecx, edi
jmp 0x42eb9e
lea edx, [ecx + 0x10]
cmp esi, edx
jbe 0x42ebb4
mov dword [ebp - 0x10], esi
lea edx, [eax - 0x72cb4b22]
mov esi, dword [ebp - 0x14]
add esi, eax
add esi, 0x8d34b4de
and edx, dword [ebp - 0x14]
add edx, edx
sub esi, edx
mov edx, esi
add dl, 0xee
mov dword [ebp - 0x18], edx
mov esi, dword [ebp - 0x10]
cmp esi, edi
je 0x42eb9e
lea edx, [ecx + 2]
cmp esi, edx
jne 0x42ebf2
mov edi, ecx
mov esi, dword [ebp - 0x14]
jmp 0x42eab9
lea edx, [ecx + 3]
cmp esi, edx
mov edx, edi
mov edi, dword [ebp - 0x10]
jne 0x42e9f8
mov dword [ebp - 0x10], esi
lea edi, [eax - 0x46a0d542]
lea ebx, [eax + edx]
add ebx, 0xb95f2abe
and edi, edx
mov byte [ebp - 0x18], 0xce
add edi, edi
sub ebx, edi
add bl, byte [ebp - 0x18]
lea edi, [eax + 0x4f631e26]
mov esi, edx
add edx, eax
add edx, 0x4f631e26
and edi, esi
add edi, edi
sub edx, edi
add dl, bl
add dl, 0xf6
mov byte [ebp + eax - 0x20c], dl
mov esi, dword [ebp - 0x10]
add esi, ecx
movzx edx, bl
not edx
jmp 0x42eba3
lea edx, [ecx + 8]
cmp esi, edx
jne 0x42e9cf
movzx edx, bl
add edx, ecx
add eax, edx
inc eax
cmp eax, 0x14
jb 0x42e9df
jmp 0x42ec76
cmp esi, edi
jne 0x42ebe4
lea edx, [eax + 0x468f8dba]
mov ebx, edi
mov edi, esi
mov esi, dword [ebp - 0x14]
lea ecx, [eax + esi]
add ecx, 0x468f8dba
and edx, esi
mov esi, edi
mov edi, ebx
add edx, edx
sub ecx, edx
add cl, 0xea
mov byte [ebp + eax - 0x20c], cl
jmp 0x42ebed
lea edx, [ecx + 3]
cmp esi, edx
jne 0x42ec1c
mov edi, ecx
dec eax
mov ecx, edi
jmp 0x42eba5
lea edx, [ecx + 3]
cmp esi, edx
jne 0x42ec57
mov dword [ebp - 0x10], esi
lea edx, [eax - 0x69fc0c98]
mov esi, dword [ebp - 0x14]
lea ebx, [eax + esi]
add ebx, 0x9603f368
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x28
jmp 0x42eb87
lea edx, [ecx + 2]
cmp esi, edx
je 0x42ea89
lea edx, [ecx + 4]
mov dword [ebp - 0x10], esi
cmp esi, edx
je 0x42eb2f
lea edx, [eax - 0x7b9637ca]
mov esi, dword [ebp - 0x14]
add esi, eax
add esi, 0x8469c836
and edx, dword [ebp - 0x14]
add edx, edx
sub esi, edx
mov edx, esi
add dl, 0x86
jmp 0x42eb1a
cmp ecx, 4
ja 0x42ebb8
mov edx, dword [ebp - 0x18]
mov byte [ebp + eax - 0x20c], dl
jmp 0x42eba5
mov esi, 0x13c4c7e
jmp 0x42ec7f
xor esi, esi
jmp 0x42ec7f
mov esi, 0x1528448
xor eax, eax
mov dword [ebp - 0x35c], eax
mov dword [ebp - 0x34c], eax
mov dword [ebp - 0x348], 0xf
mov byte [ebp - 0x35c], al
mov ebx, dword [ebp - 0x30]
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea edi, [ebp - 0x35c]
mov ecx, edi
push eax
push ebx
call fcn.00450e50
push edi
lea edi, [ebp - 0x344]
push edi
call fcn.0040d537
add esp, 8
cmp dword [ebp - 0x330], 0x10
jb 0x42ecd7
mov edi, dword [ebp - 0x344]
mov dword [ebp - 0x28], edi
lea eax, [esi + ebp]
add eax, 0xfffffdf4
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x1e2]
xor ecx, ecx
mov byte [eax + 0x10], cl
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov word [ebp - 0x1e4], 0x5569
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edi, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x42f003
mov bl, byte [ebp + eax - 0x1e4]
movzx edx, bl
lea ecx, [edi + 1]
cmp esi, ecx
jae 0x42ed47
cmp edi, eax
ja 0x42f00e
mov dword [ebp - 0x10], edx
lea edx, [esi + edi]
cmp edx, eax
jbe 0x42ed96
add edi, 0xa
cmp esi, edi
je 0x42ee10
jmp 0x42ecff
je 0x42ed8c
mov dword [ebp - 0x10], edx
lea edx, [edi + 2]
cmp esi, edx
jne 0x42ee3e
mov dword [ebp - 0x14], esi
lea edx, [eax - 0x2a314084]
mov esi, dword [ebp - 0x10]
lea ebx, [eax + esi]
add ebx, 0xd5cebf7c
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x9c
mov byte [ebp + eax - 0x1e4], bl
mov esi, dword [ebp - 0x14]
sub eax, esi
inc esi
mov bl, byte [ebp + eax - 0x1e6]
add eax, 0xfffffffe
movzx edx, bl
add edx, edi
jmp 0x42ef40
lea edx, [edi + 5]
cmp esi, edx
jbe 0x42ee08
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
lea edx, [eax - 0x214ff767]
mov esi, dword [ebp - 0x10]
lea ecx, [eax + esi]
add ecx, 0xdeb00899
and edx, esi
add edx, edx
sub ecx, edx
add cl, 0xd1
mov dword [ebp - 0x20], ecx
lea edx, [edi + 9]
mov esi, dword [ebp - 0x14]
cmp esi, edx
jbe 0x42ee69
lea edx, [eax - 0x45f5fcd6]
mov ebx, esi
mov esi, dword [ebp - 0x10]
lea ecx, [eax + esi]
add ecx, 0xba0a032a
and edx, esi
mov esi, ebx
mov ebx, ecx
add edx, edx
sub ebx, edx
add bl, 0xda
mov ecx, dword [ebp - 0x18]
test edi, edi
jne 0x42ee10
mov byte [ebp + eax - 0x1e4], bl
xor edi, edi
jmp 0x42ef42
cmp esi, ecx
jne 0x42eeb6
lea edx, [eax - 0x6a9c0245]
mov ebx, esi
mov esi, dword [ebp - 0x10]
mov edi, ecx
lea ecx, [esi + eax]
add ecx, 0x9563fdbb
and edx, esi
mov esi, ebx
add edx, edx
sub ecx, edx
add cl, 0xe3
mov byte [ebp + eax - 0x1e4], cl
dec eax
jmp 0x42ef42
lea edx, [edi + 5]
cmp esi, edx
jne 0x42eee7
lea edx, [eax + 0x5a84770f]
mov ecx, dword [ebp - 0x10]
lea ebx, [eax + ecx]
add ebx, 0x5a84770f
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x97
jmp 0x42ef39
mov ecx, dword [ebp - 0x18]
cmp esi, ecx
je 0x42ed8c
lea edx, [edi + 2]
cmp esi, edx
jne 0x42ef51
mov dword [ebp - 0x14], esi
lea edx, [eax - 0x3e03411]
mov esi, dword [ebp - 0x10]
lea ebx, [eax + esi]
add ebx, 0xfc1fcbef
and edx, esi
add edx, edx
sub ebx, edx
add bl, 0x77
mov byte [ebp + eax - 0x1e4], bl
not edi
add edi, eax
movzx eax, bl
sub edi, eax
mov eax, edi
mov edi, ecx
jmp 0x42ed5a
mov dword [ebp - 0x1c], edx
lea edx, [edi + 2]
cmp esi, edx
je 0x42ee38
lea edx, [edi + 3]
cmp esi, edx
jne 0x42ef77
lea ecx, [eax - 0x53d85aff]
mov edx, dword [ebp - 0x10]
lea ebx, [eax + edx]
add ebx, 0xac27a501
and ecx, edx
mov dl, 0xf9
jmp 0x42ef08
lea edx, [edi + 3]
cmp esi, edx
mov edx, dword [ebp - 0x10]
jne 0x42ed28
lea ecx, [eax + 0xde25e29]
lea ebx, [eax + edx]
add ebx, 0xde25e29
and ecx, edx
mov dl, 0xe1
add ecx, ecx
sub ebx, ecx
add bl, dl
mov dword [ebp - 0x18], ebx
lea edx, [eax + 0x48c1e4d5]
mov ecx, dword [ebp - 0x10]
lea ebx, [ecx + eax]
add ebx, 0x48c1e4d5
and edx, ecx
add edx, edx
sub ebx, edx
add bl, byte [ebp - 0x18]
add bl, 0x2d
mov byte [ebp + eax - 0x1e4], bl
mov ebx, dword [ebp - 0x18]
add esi, edi
movzx edx, bl
not edx
add eax, edx
inc eax
cmp eax, 0x13
jb 0x42ed0f
jmp 0x42f00a
cmp esi, dword [ebp - 0x1c]
jne 0x42ef9d
lea edx, [eax + 0x3adf86ac]
mov ecx, esi
mov esi, dword [ebp - 0x10]
lea ebx, [eax + esi]
add ebx, 0x3adf86ac
and edx, esi
mov esi, ecx
add edx, edx
sub ebx, edx
add bl, 0x4c
jmp 0x42ef39
cmp esi, dword [ebp - 0x1c]
jne 0x42efbf
lea edx, [eax + 0x12e37335]
mov ecx, esi
mov esi, dword [ebp - 0x10]
lea ebx, [eax + esi]
add ebx, 0x12e37335
and edx, esi
mov esi, ecx
add edx, edx
sub ebx, edx
add bl, 0x8d
jmp 0x42ef3b
lea edx, [edi + 3]
cmp esi, edx
jne 0x42eff0
lea ecx, [eax - 0x11c2923a]
mov edx, dword [ebp - 0x10]
lea ebx, [eax + edx]
add ebx, 0xee3d6dc6
and ecx, edx
mov dl, 0x96
jmp 0x42ef08
lea edx, [edi + 4]
cmp esi, edx
je 0x42ee7f
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
lea edx, [eax - 0x26510c73]
mov esi, dword [ebp - 0x10]
lea ecx, [eax + esi]
add ecx, 0xd9aef38d
and edx, esi
add edx, edx
sub ecx, edx
add cl, 0x25
jmp 0x42edc1
lea edx, [edi + 7]
cmp esi, edx
mov ebx, dword [ebp - 0x20]
jne 0x42edf6
jmp 0x42ee38
mov eax, 0x13a9649
jmp 0x42f013
xor eax, eax
jmp 0x42f013
mov eax, 0x14ba2bc
add eax, ebp
add eax, 0xfffffe1c
mov dword [ebp - 0x20], eax
xorps xmm0, xmm0
lea eax, [ebp - 0x222]
movups xmmword [eax], xmm0
mov dword [eax + 0xf], 0
mov word [ebp - 0x224], 0x9569
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov ebx, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x42f346
mov dl, byte [ebp + eax - 0x224]
movzx edi, dl
lea ecx, [ebx + 1]
cmp esi, ecx
jae 0x42f0b1
cmp ebx, eax
ja 0x42f351
mov dword [ebp - 0x14], edx
lea edx, [esi + ebx]
mov dword [ebp - 0x18], edx
cmp edx, eax
jbe 0x42f101
lea edx, [ebx + 0x10]
cmp esi, edx
je 0x42f144
lea ecx, [ebx + 6]
cmp esi, ecx
jne 0x42f25d
lea ecx, [eax + 0x26e6c53e]
lea edx, [eax + edi]
add edx, 0x26e6c53e
and ecx, edi
add ecx, ecx
sub edx, ecx
add dl, 0x4e
mov esi, dword [ebp - 0x18]
jmp 0x42f1ee
je 0x42f294
mov dword [ebp - 0x10], edi
lea edi, [ebx + 3]
cmp esi, edi
jne 0x42f16e
mov dword [ebp - 0x1c], esi
lea edi, [eax + 0x38f84f0f]
mov esi, dword [ebp - 0x10]
lea edx, [esi + eax]
add edx, 0x38f84f0f
and edi, esi
add edi, edi
sub edx, edi
mov edi, esi
mov esi, dword [ebp - 0x1c]
add dl, 0x97
mov byte [ebp + eax - 0x224], dl
not ebx
add ebx, eax
movzx eax, dl
sub ebx, eax
mov eax, ebx
mov ebx, ecx
jmp 0x42f268
mov dword [ebp - 0x10], edi
lea edi, [ebx + 2]
cmp esi, edi
jae 0x42f1bc
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x1c], esi
lea edi, [eax + 0x5b72c4ed]
mov esi, dword [ebp - 0x10]
lea edx, [eax + esi]
add edx, 0x5b72c4ed
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x85
mov dword [ebp - 0x44], edx
mov edx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1c]
cmp esi, ecx
mov edi, dword [ebp - 0x10]
jne 0x42f1f8
mov ebx, esi
mov esi, edi
lea edi, [eax - 0x34d2c4a5]
lea edx, [esi + eax]
add edx, 0xcb2d3b5b
and edi, esi
mov esi, ebx
add edi, edi
sub edx, edi
add dl, 0x83
mov byte [ebp + eax - 0x224], dl
jmp 0x42f258
lea edi, [ebx + 5]
cmp esi, edi
jne 0x42f24f
lea ecx, [eax - 0x5b2bfff7]
mov edi, dword [ebp - 0x10]
lea edx, [eax + edi]
add edx, 0xa4d40009
and ecx, edi
add ecx, ecx
sub edx, ecx
add dl, 0xc1
add esi, ebx
lea edi, [eax - 0x7ded3acb]
mov ecx, dword [ebp - 0x10]
add ecx, eax
add ecx, 0x8212c535
and edi, dword [ebp - 0x10]
add edi, edi
sub ecx, edi
add cl, dl
add cl, 0x8d
mov byte [ebp + eax - 0x224], cl
jmp 0x42f1ee
cmp esi, ecx
mov edx, dword [ebp - 0x14]
je 0x42f294
cmp esi, edi
jne 0x42f2bd
lea ecx, [eax + 0x2584ec70]
mov edi, esi
mov esi, dword [ebp - 0x10]
lea edx, [eax + esi]
add edx, 0x2584ec70
and ecx, esi
mov esi, edi
add ecx, ecx
sub edx, ecx
add dl, 0xf0
movzx ecx, dl
not ecx
jmp 0x42f299
lea edi, [ebx + 3]
cmp esi, edi
je 0x42f256
cmp esi, dword [ebp - 0x30]
je 0x42f0c5
lea edi, [ebx + 4]
cmp esi, edi
je 0x42f294
cmp esi, 2
ja 0x42f321
cmp esi, ecx
mov edi, dword [ebp - 0x10]
jbe 0x42f243
lea ecx, [eax + 0x4ac313ea]
lea edx, [eax + edi]
add edx, 0x4ac313ea
and ecx, edi
add ecx, ecx
sub edx, ecx
add dl, 0x9a
mov dword [ebp - 0x44], edx
mov esi, 2
mov ecx, dword [ebp - 0x44]
mov byte [ebp + eax - 0x224], cl
jmp 0x42f29b
lea edi, [ebx + 7]
cmp esi, edi
jne 0x42f2aa
mov ecx, ebx
dec eax
mov ebx, ecx
jmp 0x42f29b
lea ecx, [ebx + 2]
cmp esi, ecx
jne 0x42f039
lea edx, [eax - 0x6b94ec04]
lea ecx, [eax + edi]
add ecx, 0x946b13fc
and edx, edi
add edx, edx
sub ecx, edx
add cl, 0x1c
mov byte [ebp + eax - 0x224], cl
sub eax, esi
inc esi
mov dl, byte [ebp + eax - 0x226]
add eax, 0xfffffffe
movzx ecx, dl
add ecx, ebx
add eax, ecx
inc eax
cmp eax, 0x15
jb 0x42f049
jmp 0x42f34d
lea edi, [ebx + 4]
cmp esi, edi
mov edi, dword [ebp - 0x10]
jne 0x42f062
jmp 0x42f144
mov dword [ebp - 0x30], edi
lea edi, [ebx + 3]
cmp esi, edi
jne 0x42f2e7
lea ecx, [eax - 0x239589b6]
mov esi, dword [ebp - 0x10]
lea edx, [eax + esi]
add edx, 0xdc6a764a
and ecx, esi
add ecx, ecx
sub edx, ecx
add dl, 0xfa
jmp 0x42f0a9
lea edi, [ebx + 9]
cmp esi, edi
mov edi, dword [ebp - 0x10]
je 0x42f144
mov dword [ebp - 0x1c], esi
lea edi, [eax - 0x7f95d88f]
mov esi, dword [ebp - 0x10]
add esi, eax
add esi, 0x806a2771
and edi, dword [ebp - 0x10]
add edi, edi
sub esi, edi
mov edi, ecx
mov ecx, esi
add cl, 0xe9
mov dword [ebp - 0x44], ecx
mov ecx, edi
jmp 0x42f136
lea esi, [eax + 0x26a00048]
mov edi, dword [ebp - 0x10]
lea ecx, [eax + edi]
add ecx, 0x26a00048
and esi, edi
add esi, esi
sub ecx, esi
add dl, cl
add dl, 8
mov esi, dword [ebp - 0x18]
jmp 0x42f196
mov eax, 0x10f1429
jmp 0x42f356
xor eax, eax
jmp 0x42f356
mov eax, 0x15c4f3c
add eax, ebp
add eax, 0xfffffddc
mov dword [ebp - 0x14], eax
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov esi, eax
mov ecx, dword [ebp - 0x274]
mov eax, closesocket
sub eax, ecx
cmp eax, esi
jb 0x432260
mov edx, dword [ebp - 0x284]
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x18], ecx
add ecx, esi
mov ebx, 0xf
lea edi, [ebp - 0x90]
cmp ecx, 0x10
mov dword [ebp - 0x10], ecx
jb 0x42f401
mov dword [ebp - 0x30], eax
mov edi, ecx
or edi, 0xf
mov dword [ebp - 0x1c], edx
js 0x42f3d5
cmp edi, 0x17
mov ebx, 0x16
cmovae ebx, edi
lea eax, [ebx + 1]
cmp ebx, 0xfff
jb 0x42f3e7
mov ebx, edi
jmp 0x42f3df
mov ebx, closesocket
mov eax, closesocket
push eax
call fcn.0040130b
jmp 0x42f3ed
push eax
call fcn.004716fe
add esp, 4
mov edi, eax
mov dword [ebp - 0x90], eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
cmp eax, 0x10
lea eax, [ebp - 0x284]
cmovb edx, eax
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x7c], ebx
push esi
push dword [ebp - 0x14]
push edi
mov ebx, edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, edi
push dword [ebp - 0x18]
push ebx
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov byte [edi + eax], 0
push dword [ebp - 0x20]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [ebp - 0x80]
mov esi, dword [ebp - 0x7c]
mov ecx, esi
sub ecx, ebx
cmp ecx, eax
jae 0x42f525
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov dword [ebp - 0x14], eax
mov edi, eax
add edi, ebx
mov ecx, edi
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x42f4b0
mov edx, esi
shr edx, 1
mov dword [ebp - 0x18], edi
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, dword [ebp - 0x18]
jb 0x42f4b0
add edx, esi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x4316b7
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x7c], edx
cmp esi, 0x10
jb 0x42f554
mov eax, dword [ebp - 0x90]
push ebx
mov dword [ebp - 0x18], eax
push eax
push ecx
mov dword [ebp - 0x10], ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x20]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov ebx, eax
mov byte [eax + edi], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x42f57e
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x42f581
mov ecx, esi
mov esi, eax
add esi, ebx
mov dword [ebp - 0x80], esi
lea edi, [ebp - 0x90]
cmp ecx, 0x10
jb 0x42f53f
mov edi, dword [ebp - 0x90]
add ebx, edi
push eax
push dword [ebp - 0x20]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x42f593
push ebx
lea eax, [ebp - 0x90]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x14]
push dword [ebp - 0x20]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x42f58d
mov eax, dword [ebp - 0x18]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0x90], esi
movsd xmm0, qword [ebp - 0x80]
movsd qword [ebp - 0x170], xmm0
movups xmm0, xmmword [ebp - 0x90]
movups xmmword [ebp - 0x180], xmm0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
push dword [ebp - 0x28]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [ebp - 0x170]
mov esi, dword [ebp - 0x16c]
mov ecx, esi
sub ecx, ebx
cmp ecx, eax
jae 0x42f6bc
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov dword [ebp - 0x14], eax
mov edi, eax
add edi, ebx
mov ecx, edi
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x42f641
mov edx, esi
shr edx, 1
mov dword [ebp - 0x18], edi
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, dword [ebp - 0x18]
jb 0x42f641
add edx, esi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x4316d5
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x170], edi
mov dword [ebp - 0x16c], edx
cmp esi, 0x10
jb 0x42f6ee
mov eax, dword [ebp - 0x180]
push ebx
mov dword [ebp - 0x18], eax
push eax
push ecx
mov dword [ebp - 0x10], ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x28]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov ebx, eax
mov byte [eax + edi], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x42f718
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x42f71b
mov ecx, esi
mov esi, eax
add esi, ebx
mov dword [ebp - 0x170], esi
lea edi, [ebp - 0x180]
cmp ecx, 0x10
jb 0x42f6d9
mov edi, dword [ebp - 0x180]
add ebx, edi
push eax
push dword [ebp - 0x28]
push ebx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x42f72d
push ebx
lea eax, [ebp - 0x180]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x14]
push dword [ebp - 0x28]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x42f727
mov eax, dword [ebp - 0x18]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0x180], esi
movsd xmm0, qword [ebp - 0x170]
movsd qword [ebp - 0x98], xmm0
movups xmm0, xmmword [ebp - 0x180]
movups xmmword [ebp - 0xa8], xmm0
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0xf
mov byte [ebp - 0x180], 0
push dword [ebp - 0x2c]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [ebp - 0x98]
mov esi, dword [ebp - 0x94]
mov ecx, esi
sub ecx, ebx
cmp ecx, eax
jae 0x42f85f
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov dword [ebp - 0x14], eax
mov edi, eax
add edi, ebx
mov ecx, edi
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x42f7e4
mov edx, esi
shr edx, 1
mov dword [ebp - 0x18], edi
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, dword [ebp - 0x18]
jb 0x42f7e4
add edx, esi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x4316f3
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x98], edi
mov dword [ebp - 0x94], edx
cmp esi, 0x10
jb 0x42f891
mov eax, dword [ebp - 0xa8]
push ebx
mov dword [ebp - 0x18], eax
push eax
push ecx
mov dword [ebp - 0x10], ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x2c]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov ebx, eax
mov byte [eax + edi], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x42f8bb
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x42f8be
mov ecx, esi
mov esi, eax
add esi, ebx
mov dword [ebp - 0x98], esi
lea edi, [ebp - 0xa8]
cmp ecx, 0x10
jb 0x42f87c
mov edi, dword [ebp - 0xa8]
add ebx, edi
push eax
push dword [ebp - 0x2c]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x42f8d0
push ebx
lea eax, [ebp - 0xa8]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x14]
push dword [ebp - 0x2c]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x42f8ca
mov eax, dword [ebp - 0x18]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0xa8], esi
movsd xmm0, qword [ebp - 0x98]
movsd qword [ebp - 0xb0], xmm0
movups xmm0, xmmword [ebp - 0xa8]
movups xmmword [ebp - 0xc0], xmm0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
mov ecx, dword [ebp - 0x25c]
cmp dword [ebp - 0x258], 0x10
lea edx, [ebp - 0x26c]
jb 0x42f924
mov edx, dword [ebp - 0x26c]
mov ebx, dword [ebp - 0xb0]
mov esi, dword [ebp - 0xac]
mov eax, esi
sub eax, ebx
cmp eax, ecx
jae 0x42fa10
mov eax, closesocket
sub eax, ebx
cmp eax, ecx
jb 0x432260
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ecx
add ecx, ebx
mov eax, ecx
mov dword [ebp - 0x10], ecx
or ecx, 0xf
mov edi, closesocket
mov eax, closesocket
js 0x42f997
mov edx, esi
shr edx, 1
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, closesocket
jb 0x42f997
add edx, esi
cmp ecx, edx
mov edi, edx
cmovae edi, ecx
lea eax, [edi + 1]
cmp eax, 0x1000
jb 0x431711
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], edi
cmp esi, 0x10
jb 0x42fa3f
mov eax, dword [ebp - 0xc0]
push ebx
mov dword [ebp - 0x1c], eax
push eax
push ecx
mov edi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, edi
push dword [ebp - 0x18]
push dword [ebp - 0x14]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ebx, edi
mov eax, dword [ebp - 0x10]
mov byte [edi + eax], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x42fa6c
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x42fa6f
lea edi, [ebx + ecx]
mov dword [ebp - 0xb0], edi
mov eax, esi
lea esi, [ebp - 0xc0]
cmp eax, 0x10
jb 0x42fa2c
mov esi, dword [ebp - 0xc0]
add ebx, esi
push ecx
push edx
push ebx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x42fa81
push ebx
lea eax, [ebp - 0xc0]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x18]
push dword [ebp - 0x14]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov byte [esi + eax], 0
jmp 0x42fa7b
mov eax, dword [ebp - 0x1c]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0xc0], esi
movsd xmm0, qword [ebp - 0xb0]
movsd qword [ebp - 0xc8], xmm0
movups xmm0, xmmword [ebp - 0xc0]
movups xmmword [ebp - 0xd8], xmm0
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
push dword [ebp - 0x40]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [ebp - 0xc8]
mov esi, dword [ebp - 0xc4]
mov ecx, esi
sub ecx, ebx
cmp ecx, eax
jae 0x42fbb3
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov dword [ebp - 0x14], eax
mov edi, eax
add edi, ebx
mov ecx, edi
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x42fb38
mov edx, esi
shr edx, 1
mov dword [ebp - 0x18], edi
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, dword [ebp - 0x18]
jb 0x42fb38
add edx, esi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x431724
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0xc8], edi
mov dword [ebp - 0xc4], edx
cmp esi, 0x10
jb 0x42fbe5
mov eax, dword [ebp - 0xd8]
push ebx
mov dword [ebp - 0x18], eax
push eax
push ecx
mov dword [ebp - 0x10], ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x40]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov ebx, eax
mov byte [eax + edi], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x42fc0f
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x42fc12
mov ecx, esi
mov esi, eax
add esi, ebx
mov dword [ebp - 0xc8], esi
lea edi, [ebp - 0xd8]
cmp ecx, 0x10
jb 0x42fbd0
mov edi, dword [ebp - 0xd8]
add ebx, edi
push eax
push dword [ebp - 0x40]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x42fc24
push ebx
lea eax, [ebp - 0xd8]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x14]
push dword [ebp - 0x40]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x42fc1e
mov eax, dword [ebp - 0x18]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0xd8], esi
movsd xmm0, qword [ebp - 0xc8]
movsd qword [ebp - 0xe0], xmm0
movups xmm0, xmmword [ebp - 0xd8]
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0xf
mov byte [ebp - 0xd8], 0
mov ecx, dword [ebp - 0x244]
cmp dword [ebp - 0x240], 0x10
lea edx, [ebp - 0x254]
jb 0x42fc78
mov edx, dword [ebp - 0x254]
mov ebx, dword [ebp - 0xe0]
mov esi, dword [ebp - 0xdc]
mov eax, esi
sub eax, ebx
cmp eax, ecx
jae 0x42fd64
mov eax, closesocket
sub eax, ebx
cmp eax, ecx
jb 0x432260
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ecx
add ecx, ebx
mov eax, ecx
mov dword [ebp - 0x10], ecx
or ecx, 0xf
mov edi, closesocket
mov eax, closesocket
js 0x42fceb
mov edx, esi
shr edx, 1
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, closesocket
jb 0x42fceb
add edx, esi
cmp ecx, edx
mov edi, edx
cmovae edi, ecx
lea eax, [edi + 1]
cmp eax, 0x1000
jb 0x431742
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], edi
cmp esi, 0x10
jb 0x42fd93
mov eax, dword [ebp - 0xf0]
push ebx
mov dword [ebp - 0x1c], eax
push eax
push ecx
mov edi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, edi
push dword [ebp - 0x18]
push dword [ebp - 0x14]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ebx, edi
mov eax, dword [ebp - 0x10]
mov byte [edi + eax], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x42fdc0
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x42fdc3
lea edi, [ebx + ecx]
mov dword [ebp - 0xe0], edi
mov eax, esi
lea esi, [ebp - 0xf0]
cmp eax, 0x10
jb 0x42fd80
mov esi, dword [ebp - 0xf0]
add ebx, esi
push ecx
push edx
push ebx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x42fdd5
push ebx
lea eax, [ebp - 0xf0]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x18]
push dword [ebp - 0x14]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov byte [esi + eax], 0
jmp 0x42fdcf
mov eax, dword [ebp - 0x1c]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0xf0], esi
movsd xmm0, qword [ebp - 0xe0]
movsd qword [ebp - 0xf8], xmm0
movups xmm0, xmmword [ebp - 0xf0]
movups xmmword [ebp - 0x108], xmm0
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
push dword [ebp - 0x3c]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [ebp - 0xf8]
mov esi, dword [ebp - 0xf4]
mov ecx, esi
sub ecx, ebx
cmp ecx, eax
jae 0x42ff07
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov dword [ebp - 0x14], eax
mov edi, eax
add edi, ebx
mov ecx, edi
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x42fe8c
mov edx, esi
shr edx, 1
mov dword [ebp - 0x18], edi
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, dword [ebp - 0x18]
jb 0x42fe8c
add edx, esi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x431755
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0xf8], edi
mov dword [ebp - 0xf4], edx
cmp esi, 0x10
jb 0x42ff39
mov eax, dword [ebp - 0x108]
push ebx
mov dword [ebp - 0x18], eax
push eax
push ecx
mov dword [ebp - 0x10], ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x3c]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov ebx, eax
mov byte [eax + edi], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x42ff63
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x42ff66
mov ecx, esi
mov esi, eax
add esi, ebx
mov dword [ebp - 0xf8], esi
lea edi, [ebp - 0x108]
cmp ecx, 0x10
jb 0x42ff24
mov edi, dword [ebp - 0x108]
add ebx, edi
push eax
push dword [ebp - 0x3c]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x42ff78
push ebx
lea eax, [ebp - 0x108]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x14]
push dword [ebp - 0x3c]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x42ff72
mov eax, dword [ebp - 0x18]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0x108], esi
movsd xmm0, qword [ebp - 0xf8]
movsd qword [ebp - 0x110], xmm0
movups xmm0, xmmword [ebp - 0x108]
movups xmmword [ebp - 0x120], xmm0
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
push dword [ebp - 0x24]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [ebp - 0x110]
mov esi, dword [ebp - 0x10c]
mov ecx, esi
sub ecx, ebx
cmp ecx, eax
jae 0x4300aa
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov dword [ebp - 0x14], eax
mov edi, eax
add edi, ebx
mov ecx, edi
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x43002f
mov edx, esi
shr edx, 1
mov dword [ebp - 0x18], edi
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, dword [ebp - 0x18]
jb 0x43002f
add edx, esi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x431773
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x110], edi
mov dword [ebp - 0x10c], edx
cmp esi, 0x10
jb 0x4300dc
mov eax, dword [ebp - 0x120]
push ebx
mov dword [ebp - 0x18], eax
push eax
push ecx
mov dword [ebp - 0x10], ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x24]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov ebx, eax
mov byte [eax + edi], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x430106
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x430109
mov ecx, esi
mov esi, eax
add esi, ebx
mov dword [ebp - 0x110], esi
lea edi, [ebp - 0x120]
cmp ecx, 0x10
jb 0x4300c7
mov edi, dword [ebp - 0x120]
add ebx, edi
push eax
push dword [ebp - 0x24]
push ebx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x43011b
push ebx
lea eax, [ebp - 0x120]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x14]
push dword [ebp - 0x24]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x430115
mov eax, dword [ebp - 0x18]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0x120], esi
movsd xmm0, qword [ebp - 0x110]
movsd qword [ebp - 0x128], xmm0
movups xmm0, xmmword [ebp - 0x120]
movups xmmword [ebp - 0x138], xmm0
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 0xf
mov byte [ebp - 0x120], 0
push dword [ebp - 0x38]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [ebp - 0x128]
mov esi, dword [ebp - 0x124]
mov ecx, esi
sub ecx, ebx
cmp ecx, eax
jae 0x43024d
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov dword [ebp - 0x14], eax
mov edi, eax
add edi, ebx
mov ecx, edi
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x4301d2
mov edx, esi
shr edx, 1
mov dword [ebp - 0x18], edi
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, dword [ebp - 0x18]
jb 0x4301d2
add edx, esi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x431791
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x128], edi
mov dword [ebp - 0x124], edx
cmp esi, 0x10
jb 0x43027f
mov eax, dword [ebp - 0x138]
push ebx
mov dword [ebp - 0x18], eax
push eax
push ecx
mov dword [ebp - 0x10], ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x38]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov ebx, eax
mov byte [eax + edi], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x4302a9
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x4302ac
mov ecx, esi
mov esi, eax
add esi, ebx
mov dword [ebp - 0x128], esi
lea edi, [ebp - 0x138]
cmp ecx, 0x10
jb 0x43026a
mov edi, dword [ebp - 0x138]
add ebx, edi
push eax
push dword [ebp - 0x38]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x4302be
push ebx
lea eax, [ebp - 0x138]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x14]
push dword [ebp - 0x38]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x4302b8
mov eax, dword [ebp - 0x18]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0x138], esi
movsd xmm0, qword [ebp - 0x128]
movsd qword [ebp - 0x2a4], xmm0
movups xmm0, xmmword [ebp - 0x138]
movups xmmword [ebp - 0x2b4], xmm0
xor ecx, ecx
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x124], 0xf
mov byte [ebp - 0x138], 0
mov dword [ebp - 0x190], 0xb6a7bbb8
mov byte [ebp - 0x18c], 0x70
lea eax, [ebp - 0x18b]
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 7], ecx
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp edi, eax
ja 0x4305f6
mov dl, byte [ebp + eax - 0x190]
movzx esi, dl
lea ebx, [ecx + 1]
cmp edi, ebx
mov dword [ebp - 0x10], edi
jae 0x430388
cmp ecx, eax
ja 0x430601
mov dword [ebp - 0x14], esi
lea edi, [ecx + 8]
cmp dword [ebp - 0x10], edi
mov edi, dword [ebp - 0x10]
jae 0x430404
mov esi, edi
add edi, ecx
cmp edi, eax
jbe 0x430435
lea edx, [ecx + 5]
cmp esi, edx
mov edi, esi
je 0x430497
lea edx, [ecx + 4]
cmp edi, edx
je 0x43039c
lea edx, [ecx + 6]
mov ebx, ecx
cmp edi, edx
mov esi, dword [ebp - 0x14]
je 0x4303cc
jmp 0x430314
je 0x4303fa
mov dword [ebp - 0x14], esi
lea edi, [ecx + 2]
cmp dword [ebp - 0x10], edi
mov edi, dword [ebp - 0x10]
jne 0x43045f
lea edi, [eax + 0x4e2fc63a]
mov esi, dword [ebp - 0x14]
lea edx, [eax + esi]
add edx, 0x4e2fc63a
and edi, esi
add edi, edi
sub edx, edi
mov edi, dword [ebp - 0x10]
add dl, 0x6a
mov byte [ebp + eax - 0x190], dl
movzx edx, dl
not ecx
add ecx, eax
sub ecx, edx
mov eax, ecx
lea ecx, [eax - 0x37106098]
and ecx, esi
lea edx, [eax + esi]
add edx, 0xc8ef9f68
add ecx, ecx
sub edx, ecx
add dl, 0x28
mov byte [ebp + eax - 0x190], dl
sub eax, edi
inc edi
mov dl, byte [ebp + eax - 0x192]
add eax, 0xfffffffe
mov ecx, ebx
movzx edx, dl
add edx, ecx
jmp 0x430519
cmp edi, ebx
je 0x43043b
mov esi, edi
lea edi, [ecx + 3]
cmp esi, edi
jne 0x43049e
lea edi, [eax - 0x184465ca]
mov esi, dword [ebp - 0x14]
lea edx, [eax + esi]
add edx, 0xe7bb9a36
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x86
jmp 0x4304ee
cmp esi, ebx
mov edi, esi
jne 0x430488
lea edx, [eax + 0x63306182]
mov esi, dword [ebp - 0x14]
lea ecx, [esi + eax]
add ecx, 0x63306182
and edx, esi
add edx, edx
sub ecx, edx
add cl, 0x72
mov byte [ebp + eax - 0x190], cl
jmp 0x430499
mov esi, edi
lea edi, [ecx + 3]
cmp esi, edi
jne 0x4304c8
lea edi, [eax + 0x463e54fa]
mov esi, dword [ebp - 0x14]
lea edx, [eax + esi]
add edx, 0x463e54fa
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x2a
jmp 0x43050f
lea edi, [ecx + 3]
cmp dword [ebp - 0x10], edi
mov edi, dword [ebp - 0x10]
jne 0x43052a
mov ebx, ecx
dec eax
mov ecx, ebx
jmp 0x43051b
lea edi, [ecx + 5]
cmp esi, edi
jne 0x430550
lea edi, [eax - 0x2d450112]
mov ebx, dword [ebp - 0x14]
lea edx, [eax + ebx]
add edx, 0xd2bafeee
and edi, ebx
add edi, edi
sub edx, edi
add dl, 0x7e
mov edi, esi
jmp 0x430514
lea edi, [ecx + 4]
cmp esi, edi
mov esi, dword [ebp - 0x14]
jne 0x430340
lea edi, [eax + 0x3bbe0756]
lea edx, [eax + esi]
add edx, 0x3bbe0756
and edi, esi
add edi, edi
sub edx, edi
add dl, 0xa6
lea edi, [eax + 0x58b013de]
lea ebx, [esi + eax]
add ebx, 0x58b013de
and edi, esi
add edi, edi
sub ebx, edi
add bl, dl
add bl, 0xee
mov byte [ebp + eax - 0x190], bl
mov edi, dword [ebp - 0x10]
add edi, ecx
movzx edx, dl
not edx
add eax, edx
inc eax
cmp eax, 0x10
jb 0x430324
jmp 0x4305fd
mov ebx, edi
lea edi, [ecx + 4]
cmp ebx, edi
jne 0x43056c
lea edi, [eax + 0xb353bc2]
mov esi, dword [ebp - 0x14]
lea edx, [eax + esi]
add edx, 0xb353bc2
and edi, esi
add edi, edi
sub edx, edi
add dl, 0xb2
jmp 0x43050f
lea edi, [ecx + 7]
cmp esi, edi
je 0x43039c
lea edi, [ecx + 6]
cmp dword [ebp - 0x10], edi
mov edi, dword [ebp - 0x10]
jne 0x43035a
jmp 0x43059b
lea edi, [ecx + 5]
cmp ebx, edi
jne 0x430592
lea edi, [eax + 0xb4ee1e]
mov esi, dword [ebp - 0x14]
lea edx, [eax + esi]
add edx, 0xb4ee1e
and edi, esi
add edi, edi
sub edx, edi
add dl, 0x2e
mov edi, ebx
jmp 0x430514
lea edi, [ecx + 2]
cmp ebx, edi
mov edi, ebx
jne 0x4305a5
mov ebx, ecx
mov esi, dword [ebp - 0x14]
jmp 0x4303cc
cmp edi, 8
ja 0x4305d4
lea edi, [eax + 0x7abfd92e]
mov esi, dword [ebp - 0x14]
lea edx, [eax + esi]
add edx, 0x7abfd92e
and edi, esi
add edi, edi
sub edx, edi
add dl, 0xbe
mov byte [ebp + eax - 0x190], dl
mov edi, dword [ebp - 0x10]
jmp 0x43051b
lea edi, [eax - 0x220fc550]
mov esi, dword [ebp - 0x14]
lea ebx, [eax + esi]
add ebx, 0xddf03ab0
and edi, esi
add edi, edi
sub ebx, edi
add dl, bl
add dl, 0x30
jmp 0x4304ee
mov eax, 0x165c416
jmp 0x430606
xor eax, eax
jmp 0x430606
mov eax, 0x165eae8
add eax, ebp
add eax, 0xfffffe70
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x32a]
xor ecx, ecx
mov dword [eax + 0x13], ecx
mov dword [eax + 0xf], ecx
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov word [ebp - 0x32c], 0x2d35
call fcn.0046d640
mov esi, dword [eax]
call fcn.0046d646
mov edi, dword [eax]
xor eax, eax
cmp esi, eax
ja 0x430b7c
movzx ecx, byte [ebp + eax - 0x32c]
lea edx, [edi + 1]
mov dword [ebp - 0x10], edx
cmp esi, edx
jae 0x4306c9
lea edx, [eax + 0x3cc51c26]
lea ebx, [eax + ecx]
add ebx, 0x3cc51c26
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xf6
cmp edi, eax
ja 0x430b87
lea edx, [edi + 2]
mov dword [ebp - 0x18], edx
cmp esi, edx
jae 0x4306e8
lea edx, [eax - 0x3d4b0e2]
lea ebx, [eax + ecx]
add ebx, 0xfc2b4f1e
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x2e
lea edx, [esi + edi]
cmp edx, eax
jbe 0x43075d
lea edx, [edi + 0xa]
cmp esi, edx
jne 0x430804
lea edx, [eax + 0xfc688ec]
lea ebx, [eax + ecx]
add ebx, 0xfc688ec
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x8c
jmp 0x43072f
jne 0x430735
lea edx, [eax - 0x49b0ab8e]
lea ebx, [eax + ecx]
add ebx, 0xb64f5472
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xe2
jmp 0x4309b1
cmp esi, dword [ebp - 0x10]
jne 0x4307b8
mov edi, esi
lea edx, [eax + 0x75b5876a]
lea ebx, [eax + ecx]
add ebx, 0x75b5876a
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x1a
lea esi, [eax + 0x734e534a]
lea edx, [ecx + eax]
add edx, 0x734e534a
and esi, ecx
add esi, esi
sub edx, esi
add dl, 0xfa
mov byte [ebp + eax - 0x32c], dl
mov esi, edi
mov edi, dword [ebp - 0x10]
dec eax
jmp 0x4309b5
lea edx, [edi + 2]
cmp esi, edx
jne 0x4307de
lea edx, [eax + 0x2fd98cbe]
lea ebx, [eax + ecx]
add ebx, 0x2fd98cbe
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xce
jmp 0x430985
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x14], edi
lea edx, [edi + 8]
cmp esi, edx
jae 0x430861
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x1c], esi
lea edx, [eax + 0x3cc51c26]
lea ebx, [eax + ecx]
add ebx, 0x3cc51c26
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xf6
mov edi, dword [ebp - 0x10]
cmp dword [ebp - 0x20], 4
jne 0x4308b1
lea edx, [eax + 0x299da7bc]
lea ebx, [eax + ecx]
add ebx, 0x299da7bc
and edx, ecx
add edx, edx
sub ebx, edx
sub bl, cl
add bl, 0xdc
jmp 0x43092a
lea edx, [edi + 3]
cmp esi, edx
jne 0x43088c
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x1c], esi
lea edi, [eax - 0x1dabcfb2]
lea ebx, [eax + ecx]
add ebx, 0xe254304e
and edi, ecx
mov dl, 0xde
jmp 0x430828
lea edx, [edi + 6]
cmp esi, edx
jne 0x43066f
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x1c], esi
lea edi, [eax + 0x16026dee]
lea ebx, [eax + ecx]
add ebx, 0x16026dee
and edi, ecx
mov dl, 0x7e
jmp 0x430828
lea edx, [edi + 4]
cmp esi, edx
jne 0x4308de
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x1c], esi
lea edi, [eax - 0x76af3ec8]
lea ebx, [eax + ecx]
add ebx, 0x8950c138
and edi, ecx
mov dl, pe_nt_image_headers32
add edi, edi
sub ebx, edi
add bl, dl
lea esi, [eax - 0x1327746a]
lea edx, [ecx + eax]
add edx, 0xecd88b96
and esi, ecx
add esi, esi
sub edx, esi
add dl, bl
add dl, 0xe6
mov byte [ebp + eax - 0x32c], dl
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x14]
add esi, edi
movzx ecx, bl
not ecx
jmp 0x4309b3
mov edi, dword [ebp - 0x10]
cmp esi, edi
jne 0x430906
lea edx, [eax - 0x7a961c4]
lea ebx, [eax + ecx]
add ebx, 0xf8569e3c
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x5c
mov edi, dword [ebp - 0x14]
jmp 0x4309b1
lea edx, [edi + 5]
cmp esi, edx
jne 0x43092f
lea edx, [eax + 0x5bde689a]
lea ebx, [eax + ecx]
add ebx, 0x5bde689a
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xca
jmp 0x430855
mov esi, dword [ebp - 0x1c]
cmp esi, edi
mov edi, dword [ebp - 0x14]
jne 0x4309c4
mov edi, esi
lea edx, [eax - 0xb7e12a6]
lea ebx, [eax + ecx]
add ebx, 0xf481ed5a
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x8a
jmp 0x43070b
lea edx, [edi + 6]
cmp esi, edx
jne 0x4309ea
mov dword [ebp - 0x1c], esi
lea edx, [eax - 0xa1095e4]
lea ebx, [eax + ecx]
add ebx, 0xf5ef6a1c
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x3c
jmp 0x430955
cmp esi, dword [ebp - 0x18]
mov dword [ebp - 0x1c], esi
jne 0x430a10
lea edx, [eax - 0x1494f12c]
lea ebx, [eax + ecx]
add ebx, 0xeb6b0ed4
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x34
mov edi, dword [ebp - 0x14]
jmp 0x430955
lea edx, [edi + 6]
cmp esi, edx
jne 0x430a39
mov dword [ebp - 0x1c], esi
lea edx, [eax + 0x4ef2d932]
lea ebx, [eax + ecx]
add ebx, 0x4ef2d932
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xa2
lea esi, [eax + 0x6662c3e2]
lea edx, [ecx + eax]
add edx, 0x6662c3e2
and esi, ecx
add esi, esi
sub edx, esi
add dl, 0xd2
mov byte [ebp + eax - 0x32c], dl
movzx edx, dl
not edi
add edi, eax
sub edi, edx
mov eax, edi
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x10]
lea edx, [eax - 0x5cd81ff8]
and edx, ecx
add ecx, eax
add ecx, 0xa327e008
add edx, edx
sub ecx, edx
add cl, 0xc8
mov byte [ebp + eax - 0x32c], cl
sub eax, esi
inc esi
movzx ecx, byte [ebp + eax - 0x32e]
add eax, 0xfffffffe
add ecx, edi
add eax, ecx
inc eax
cmp eax, 0x19
jb 0x43063d
jmp 0x430b83
cmp esi, dword [ebp - 0x18]
jne 0x430a5f
lea edx, [eax + 0x6e0c25a6]
lea ebx, [eax + ecx]
add ebx, 0x6e0c25a6
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x76
jmp 0x43072c
cmp esi, dword [ebp - 0x10]
jne 0x430b60
lea edx, [eax + 0x6f79a268]
lea ebx, [eax + ecx]
add ebx, 0x6f79a268
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x28
jmp 0x430985
mov dword [ebp - 0x28], edx
mov edx, dword [ebp - 0x14]
add edx, 3
cmp esi, edx
jne 0x43078f
lea edi, [eax + 0x5809b7b8]
lea ebx, [eax + ecx]
add ebx, 0x5809b7b8
and edi, ecx
mov dl, 0xf8
jmp 0x430828
cmp esi, dword [ebp - 0x18]
jne 0x430699
lea edx, [eax - 0x3782ee82]
lea ebx, [eax + ecx]
add ebx, 0xc87d117e
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x8e
jmp 0x430985
lea edx, [edi + 3]
cmp esi, edx
jne 0x430a7e
lea edi, [eax + 0x6120963e]
lea ebx, [eax + ecx]
add ebx, 0x6120963e
and edi, ecx
mov dl, 0x4e
jmp 0x430828
lea edx, [edi + 5]
cmp esi, edx
jne 0x430aa2
lea edx, [eax + 0x543506d6]
lea ebx, [eax + ecx]
add ebx, 0x543506d6
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x26
jmp 0x430857
lea edx, [edi + 7]
cmp esi, edx
jne 0x430ac6
lea edx, [eax + 0x4749776e]
lea ebx, [eax + ecx]
add ebx, 0x4749776e
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xfe
jmp 0x430985
lea edx, [edi + 6]
cmp esi, edx
jne 0x430aea
lea edx, [eax - 0x3f2c5046]
lea ebx, [eax + ecx]
add ebx, 0xc0d3afba
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0xea
jmp 0x4309b1
lea edx, [edi + 4]
cmp esi, edx
jne 0x430b09
lea edi, [eax + 0x506055f4]
lea ebx, [eax + ecx]
add ebx, 0x506055f4
and edi, ecx
mov dl, 0x54
jmp 0x430828
cmp esi, dword [ebp - 0x28]
jne 0x430b2d
mov edi, esi
lea edx, [eax - 0x43010128]
lea ebx, [eax + ecx]
add ebx, 0xbcfefed8
and edx, ecx
add edx, edx
sub ebx, edx
add bl, 0x18
jmp 0x43070b
test edi, edi
je 0x430b52
mov edi, esi
lea edx, [eax + 0x36893724]
lea ebx, [eax + ecx]
add ebx, 0x36893724
and edx, ecx
add edx, edx
sub ebx, edx
add bl, bl
add bl, 8
jmp 0x43070b
mov byte [ebp + eax - 0x32c], bl
xor edi, edi
jmp 0x4309b5
lea ebx, [eax + ecx]
add ebx, 0x18dd6772
add eax, 0x18dd6772
and eax, ecx
add eax, eax
sub ebx, eax
add bl, 0xe2
jmp 0x43062d
mov eax, 0x13405ae
jmp 0x430b8c
xor eax, eax
jmp 0x430b8c
mov eax, 0x16ee988
add eax, ebp
add eax, 0xfffffcd4
mov ebx, dword [ebp - 0x158]
mov dword [ebp - 0x10], eax
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov edx, dword [ebp - 0x168]
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14], eax
lea ecx, [eax + ebx]
mov esi, 0xf
lea edi, [ebp - 0x150]
cmp ecx, 0x10
jb 0x430c33
mov edi, ecx
or edi, 0xf
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x20], edx
js 0x430c0a
cmp edi, 0x17
mov esi, 0x16
cmovae esi, edi
lea eax, [esi + 1]
cmp esi, 0xfff
jb 0x430c1c
mov esi, edi
jmp 0x430c14
mov esi, closesocket
mov eax, closesocket
push eax
call fcn.0040130b
jmp 0x430c22
push eax
call fcn.004716fe
add esp, 4
mov edi, eax
mov dword [ebp - 0x150], eax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x168]
cmovb edx, eax
mov dword [ebp - 0x140], ecx
mov dword [ebp - 0x13c], esi
push ebx
push edx
push edi
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, edi
push dword [ebp - 0x14]
push dword [ebp - 0x10]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + esi], 0
push dword [ebp - 0x24]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [ebp - 0x140]
mov esi, dword [ebp - 0x13c]
mov ecx, esi
sub ecx, ebx
cmp ecx, eax
jae 0x430d67
mov ecx, closesocket
sub ecx, ebx
cmp ecx, eax
jb 0x432260
mov dword [ebp - 0x14], eax
mov edi, eax
add edi, ebx
mov ecx, edi
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x430cec
mov edx, esi
shr edx, 1
mov dword [ebp - 0x18], edi
mov edi, esi
mov esi, edx
xor esi, 0x7fffffff
cmp esi, edi
mov esi, edi
mov edi, dword [ebp - 0x18]
jb 0x430cec
add edx, esi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x4317af
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x140], edi
mov dword [ebp - 0x13c], edx
cmp esi, 0x10
jb 0x430d99
mov eax, dword [ebp - 0x150]
push ebx
mov dword [ebp - 0x18], eax
push eax
push ecx
mov dword [ebp - 0x10], ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x24]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov ebx, eax
mov byte [eax + edi], 0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x430dc3
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x430dc6
mov ecx, esi
mov esi, eax
add esi, ebx
mov dword [ebp - 0x140], esi
lea edi, [ebp - 0x150]
cmp ecx, 0x10
jb 0x430d84
mov edi, dword [ebp - 0x150]
add ebx, edi
push eax
push dword [ebp - 0x24]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x430dd8
push ebx
lea eax, [ebp - 0x150]
push eax
push ecx
mov esi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
push dword [ebp - 0x14]
push dword [ebp - 0x24]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x430dd2
mov eax, dword [ebp - 0x18]
push ecx
push eax
call fcn.00471733
add esp, 8
mov esi, ebx
mov dword [ebp - 0x150], esi
movsd xmm0, qword [ebp - 0x140]
movsd qword [ebp - 0x198], xmm0
movups xmm0, xmmword [ebp - 0x150]
movups xmmword [ebp - 0x1a8], xmm0
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0xf
mov byte [ebp - 0x150], 0
mov edx, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0x2a0]
cmp ecx, 0x10
lea esi, [ebp - 0x2b4]
mov dword [ebp - 0x24], edx
cmovae esi, edx
mov edx, dword [ebp - 0x198]
mov ebx, dword [ebp - 0x194]
mov eax, ebx
sub eax, edx
mov edi, dword [ebp - 0x2a4]
cmp eax, edi
mov dword [ebp - 0x18], ecx
jae 0x430f32
mov dword [ebp - 0x1c], ebx
mov eax, closesocket
sub eax, edx
cmp eax, edi
jb 0x432260
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x2c], edx
lea ecx, [edx + edi]
mov dword [ebp - 0x14], ecx
or ecx, 0xf
mov ebx, closesocket
mov edi, closesocket
js 0x430ea9
mov eax, dword [ebp - 0x1c]
mov edx, eax
shr edx, 1
mov esi, edx
xor esi, 0x7fffffff
cmp esi, eax
jb 0x430ea9
add edx, dword [ebp - 0x1c]
cmp ecx, edx
mov ebx, edx
cmovae ebx, ecx
lea edi, [ebx + 1]
cmp edi, 0x1000
jb 0x4317cd
mov dword [ebp - 0x10], ebx
push edi
call fcn.0040130b
add esp, 4
mov esi, eax
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 0x198], ebx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x194], eax
cmp dword [ebp - 0x1c], 0x10
mov ecx, dword [ebp - 0x2c]
jb 0x430f7b
mov eax, dword [ebp - 0x1a8]
push ecx
mov dword [ebp - 0x30], eax
push eax
push esi
mov edi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, esi
push dword [ebp - 0x28]
push dword [ebp - 0x20]
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + ebx], 0
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 1]
cmp ecx, 0x1000
jb 0x430faa
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
mov ebx, dword [ebp - 0x10]
jae 0x432265
mov ecx, dword [ebp - 0x1c]
add ecx, 0x24
jmp 0x430fb0
mov eax, esi
lea esi, [edx + edi]
mov ecx, esi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x198], esi
lea esi, [ebp - 0x1a8]
cmp ebx, 0x10
jb 0x430f53
mov esi, dword [ebp - 0x1a8]
add edx, esi
push edi
push eax
push edx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov byte [esi + eax], 0
mov esi, dword [ebp - 0x1a8]
mov ecx, dword [ebp - 0x198]
mov ebx, dword [ebp - 0x194]
jmp 0x430fc3
push ecx
lea eax, [ebp - 0x1a8]
push eax
push esi
mov edi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, esi
push dword [ebp - 0x28]
push dword [ebp - 0x20]
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + ebx], 0
mov ecx, ebx
mov ebx, dword [ebp - 0x10]
jmp 0x430fbd
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x30]
push ecx
push eax
call fcn.00471733
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x1a8], esi
cmp ebx, 0x10
lea edx, [ebp - 0x1a8]
mov dword [ebp - 0x1c], esi
cmovae edx, esi
mov esi, dword [ebp - 0x68]
mov edi, dword [ebp - 0x64]
mov eax, edi
sub eax, esi
cmp eax, ecx
jae 0x4310be
mov eax, closesocket
sub eax, esi
cmp eax, ecx
jb 0x432260
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x14], ecx
add ecx, esi
mov dword [ebp - 0x20], ecx
or ecx, 0xf
mov dword [ebp - 0x10], closesocket
mov eax, closesocket
js 0x431040
mov edx, edi
shr edx, 1
mov eax, edi
mov edi, edx
xor edi, 0x7fffffff
cmp edi, eax
mov edi, eax
mov eax, closesocket
jb 0x431040
add edx, edi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x4317e3
mov dword [ebp - 0x10], edx
push eax
call fcn.0040130b
add esp, 4
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
cmp edi, 0x10
jb 0x4310ed
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x10], ebx
mov edi, dword [ebp - 0x78]
push esi
push edi
push ecx
mov ebx, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, ebx
push dword [ebp - 0x14]
push dword [ebp - 0x28]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [ebp - 0x14], ebx
mov eax, dword [ebp - 0x20]
mov byte [ebx + eax], 0
mov eax, dword [ebp - 0x2c]
lea ecx, [eax + 1]
cmp ecx, 0x1000
jb 0x43111a
mov edx, eax
mov eax, dword [edi - 4]
add edi, 0xfffffffc
sub edi, eax
cmp edi, 0x20
mov esi, dword [ebp - 0x18]
jae 0x432265
mov ecx, edx
add ecx, 0x24
mov edi, eax
jmp 0x43111d
mov dword [ebp - 0x10], ebx
lea ebx, [esi + ecx]
mov dword [ebp - 0x68], ebx
mov eax, edi
lea edi, [ebp - 0x78]
cmp eax, 0x10
jb 0x4310d4
mov edi, dword [ebp - 0x78]
add esi, edi
push ecx
push edx
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [edi + ebx], 0
mov esi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x10]
jmp 0x431130
push esi
lea eax, [ebp - 0x78]
push eax
push ecx
mov edi, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, edi
push dword [ebp - 0x14]
push dword [ebp - 0x28]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x20]
mov byte [edi + eax], 0
mov esi, dword [ebp - 0x18]
jmp 0x43112d
mov esi, dword [ebp - 0x18]
push ecx
push edi
call fcn.00471733
add esp, 8
mov ebx, dword [ebp - 0x10]
mov edi, dword [ebp - 0x14]
mov dword [ebp - 0x78], edi
cmp ebx, 0x10
jb 0x431168
lea ecx, [ebx + 1]
cmp ecx, 0x1000
jb 0x43115b
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add ebx, 0x24
mov ecx, ebx
jmp 0x43115e
mov eax, dword [ebp - 0x1c]
push ecx
push eax
call fcn.00471733
add esp, 8
cmp esi, 0x10
jb 0x4311a0
lea ecx, [esi + 1]
cmp ecx, 0x1000
jb 0x431193
mov ecx, dword [ebp - 0x24]
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x432265
add esi, 0x24
mov ecx, esi
jmp 0x431196
mov eax, dword [ebp - 0x24]
push ecx
push eax
call fcn.00471733
add esp, 8
mov dword [ebp - 0x2a4], 0
mov dword [ebp - 0x2a0], 0xf
mov byte [ebp - 0x2b4], 0
mov eax, dword [ebp - 0x124]
cmp eax, 0x10
jb 0x4311f9
mov ecx, dword [ebp - 0x138]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4311ef
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0xf
mov byte [ebp - 0x138], 0
mov eax, dword [ebp - 0x10c]
cmp eax, 0x10
jb 0x431252
mov ecx, dword [ebp - 0x120]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x431248
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 0xf
mov byte [ebp - 0x120], 0
mov eax, dword [ebp - 0xf4]
cmp eax, 0x10
jb 0x4312ab
mov ecx, dword [ebp - 0x108]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4312a1
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
mov eax, dword [ebp - 0xdc]
cmp eax, 0x10
jb 0x431304
mov ecx, dword [ebp - 0xf0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4312fa
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
mov eax, dword [ebp - 0xc4]
cmp eax, 0x10
jb 0x43135d
mov ecx, dword [ebp - 0xd8]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x431353
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0xf
mov byte [ebp - 0xd8], 0
mov eax, dword [ebp - 0xac]
cmp eax, 0x10
jb 0x4313b6
mov ecx, dword [ebp - 0xc0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4313ac
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
mov eax, dword [ebp - 0x94]
cmp eax, 0x10
jb 0x43140f
mov ecx, dword [ebp - 0xa8]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x431405
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
mov eax, dword [ebp - 0x16c]
cmp eax, 0x10
jb 0x431468
mov ecx, dword [ebp - 0x180]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x43145e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x7c]
cmp eax, 0x10
jb 0x4314a3
mov ecx, dword [ebp - 0x90]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x431499
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x330]
cmp eax, 0x10
jb 0x4314e1
mov ecx, dword [ebp - 0x344]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4314d7
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov dword [ebp - 0x334], 0
mov dword [ebp - 0x330], 0xf
mov byte [ebp - 0x344], 0
mov eax, dword [ebp - 0x348]
cmp eax, 0x10
jb 0x43153a
mov ecx, dword [ebp - 0x35c]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x431530
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
inc dword [0x4784fc]
mov eax, dword [ebp - 0x240]
cmp eax, 0x10
jb 0x43157e
mov ecx, dword [ebp - 0x254]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x431574
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x258]
cmp eax, 0x10
jb 0x4315bc
mov ecx, dword [ebp - 0x26c]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4315b2
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x360]
cmp eax, 0x10
jb 0x4315fa
mov ecx, dword [ebp - 0x374]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4315f0
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x270]
cmp eax, 0x10
jb 0x431638
mov ecx, dword [ebp - 0x284]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x43162e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x154]
cmp eax, 0x10
jb 0x431676
mov ecx, dword [ebp - 0x168]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x43166c
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x4c]
cmp eax, 0x10
jb 0x431884
mov ecx, dword [ebp - 0x60]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4316a8
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
jmp 0x431884
test eax, eax
je 0x431809
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x42f4be
test eax, eax
je 0x431813
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x42f64f
test eax, eax
je 0x43181d
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x42f7f2
test eax, eax
je 0x431827
push eax
call fcn.004716fe
jmp 0x42f99d
test eax, eax
je 0x431831
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x42fb46
test eax, eax
je 0x43183b
push eax
call fcn.004716fe
jmp 0x42fcf1
test eax, eax
je 0x431845
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x42fe9a
test eax, eax
je 0x43184f
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x43003d
test eax, eax
je 0x431859
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x4301e0
test eax, eax
je 0x431863
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x430cfa
test edi, edi
je 0x43186d
mov dword [ebp - 0x10], ebx
push edi
call fcn.004716fe
jmp 0x430eb2
test eax, eax
je 0x43187a
push eax
mov dword [ebp - 0x10], edx
call fcn.004716fe
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, eax
jmp 0x43104e
mov esi, dword [ebp - 0x28]
jmp 0x42df6c
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x42f4be
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x42f64f
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x42f7f2
xor ecx, ecx
xor edi, edi
dec edi
jmp 0x42f9a2
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x42fb46
xor ecx, ecx
xor edi, edi
dec edi
jmp 0x42fcf6
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x42fe9a
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x43003d
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x4301e0
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x430cfa
xor esi, esi
xor eax, eax
dec eax
mov dword [ebp - 0x10], eax
jmp 0x430eb7
xor ecx, ecx
xor edx, edx
dec edx
jmp 0x43104e
mov esi, dword [0x478658]
test esi, esi
jne 0x4319f1
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0x4f2e832c
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x4318fc
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0xc530048
cmp si, 2
jb 0x4318ee
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0xc530048
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x4318db
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x4319d8
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x4319d8
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x4319aa
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x43195a
add edi, dword [ebp - 0x14]
mov edx, 0xc530048
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x431946
jmp 0x43195f
mov edx, 0xc530048
cmp edx, ecx
jne 0x431927
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x4319eb
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x4319eb
mov al, byte [esi]
mov ecx, 0xc530048
mov edi, 0xc530048
cmp al, 0x2e
je 0x4319b2
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x431995
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x4319d8
mov al, byte [esi + 1]
test al, al
je 0x4319d3
add esi, 2
mov ecx, 0xc530048
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x4319c1
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x4319eb
cmp dword [edx + 0x18], 0
jne 0x4318ac
mov dword [0x478658], esi
push dword [ebp - 0x34]
call esi
cmp eax, 0x64
je 0x42d51e
cmp dword [ebp - 0x64], 0x10
jb 0x431a0a
mov eax, dword [ebp - 0x78]
jmp 0x431a0d
lea eax, [ebp - 0x78]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x1c], eax
movaps xmm0, xmmword [0x4735c0]
movups xmmword [ebp - 0x168], xmm0
mov byte [ebp - 0x158], 0
call fcn.0046d640
mov edi, dword [eax]
call fcn.0046d646
mov ecx, dword [eax]
xor eax, eax
cmp edi, eax
ja 0x431c4e
mov bl, byte [ebp + eax - 0x168]
movzx edx, bl
lea esi, [ecx + 1]
cmp edi, esi
jae 0x431a8a
cmp ecx, eax
ja 0x431c59
mov dword [ebp - 0x10], esi
lea esi, [edi + ecx]
cmp esi, eax
jbe 0x431abe
mov dword [ebp - 0x14], esi
lea esi, [ecx + 3]
cmp edi, esi
jne 0x431afc
lea esi, [eax + 0xa6]
and esi, edx
add esi, esi
add edx, eax
sub edx, esi
add edx, 0xd14f3c1c
jmp 0x431aed
jne 0x431a93
mov esi, ecx
jmp 0x431b63
mov dword [ebp - 0x10], esi
lea esi, [ecx + 3]
cmp edi, esi
je 0x431b07
lea esi, [ecx + 4]
cmp edi, esi
jne 0x431b7b
lea esi, [eax + 0x91]
and esi, edx
add esi, esi
add edx, eax
sub edx, esi
add edx, 0xf819919a
jmp 0x431af0
cmp esi, 3
je 0x431b07
mov dword [ebp - 0x14], esi
mov esi, dword [ebp - 0x10]
cmp edi, esi
je 0x431bb6
lea ebx, [ecx + 2]
cmp edi, ebx
jne 0x431bdc
lea edi, [eax + 0x3f]
and edi, edx
add edi, edi
add edx, eax
sub edx, edi
add edx, 0x88c9b586
mov edi, dword [ebp - 0x14]
not edx
or edx, 0xffffff00
add eax, edx
jmp 0x431b6c
lea esi, [ecx + 6]
cmp edi, esi
jne 0x431b9a
lea esi, [eax + 0x692ffb83]
lea ebx, [eax + edx]
add ebx, 0x692ffb83
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x6b
mov byte [ebp + eax - 0x168], bl
movzx esi, bl
not ecx
add ecx, eax
mov eax, ecx
sub eax, esi
lea ebx, [eax - 0x5ecd2d34]
and ebx, edx
add edx, eax
add edx, 0xa132d2cc
add ebx, ebx
sub edx, ebx
add dl, 0x6c
mov byte [ebp + eax - 0x168], dl
add esi, edi
sub ecx, esi
inc edi
mov bl, byte [ebp + ecx - 0x16a]
add ecx, 0xfffffffe
mov eax, ecx
mov esi, dword [ebp - 0x10]
movzx ecx, bl
add ecx, esi
add eax, ecx
mov ecx, esi
inc eax
cmp eax, 0x11
jb 0x431a3b
jmp 0x431c55
lea esi, [ecx + 5]
cmp edi, esi
jne 0x431ba8
lea esi, [eax + 0x23]
and esi, edx
add esi, esi
add edx, eax
sub edx, esi
add edx, 0x681f402e
add edi, ecx
jmp 0x431af0
lea edx, [ecx + 0xa]
mov esi, ecx
cmp edi, edx
je 0x431b63
jmp 0x431a2b
lea esi, [ecx + 8]
cmp edi, esi
mov esi, dword [ebp - 0x10]
jne 0x431a54
mov ebx, esi
lea esi, [eax - 0x76db61a1]
lea ecx, [edx + eax]
add ecx, 0x89249e5f
and esi, edx
add esi, esi
sub ecx, esi
add cl, 0x67
mov byte [ebp + eax - 0x168], cl
dec eax
mov ecx, ebx
jmp 0x431b6c
lea esi, [ecx + 5]
cmp edi, esi
jne 0x431bfc
lea esi, [eax + 0xd1]
and esi, edx
add esi, esi
add edx, eax
sub edx, esi
add edx, 0xf8cf641a
jmp 0x431af0
lea ebx, [ecx + 4]
cmp edi, ebx
je 0x431b07
mov dword [ebp - 0x10], edi
cmp edi, esi
jbe 0x431c28
lea esi, [eax - 0xf170a9e]
lea ebx, [eax + edx]
add ebx, 0xf0e8f562
and esi, edx
add esi, esi
sub ebx, esi
add bl, 0x52
jmp 0x431c3f
lea esi, [eax + 0x3802d749]
lea ebx, [eax + edx]
add ebx, 0x3802d749
and esi, edx
add esi, esi
sub ebx, esi
inc bl
mov byte [ebp + eax - 0x168], bl
mov edi, dword [ebp - 0x10]
jmp 0x431b6c
mov eax, 0xab7c55
jmp 0x431c5e
xor eax, eax
jmp 0x431c5e
mov eax, 0x168a50c
lea edi, [eax + ebp]
add edi, 0xfffffe98
xor eax, eax
lea esi, [ebp - 0x60]
mov dword [esi], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, esi
push eax
push edi
call fcn.00450e50
mov ecx, dword [ebp + 0xc]
mov ebx, dword [ecx + 0x10]
cmp dword [ecx + 0x14], 0x10
jb 0x431c9b
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x50]
mov edi, dword [ebp - 0x4c]
mov eax, edi
sub eax, edx
cmp eax, ebx
mov dword [ebp - 0x10], ecx
jae 0x431d82
mov dword [ebp - 0x14], closesocket
mov eax, closesocket
sub eax, edx
cmp eax, ebx
jb 0x432260
mov dword [ebp - 0x24], edx
lea ecx, [edx + ebx]
mov dword [ebp - 0x20], ecx
or ecx, 0xf
mov eax, closesocket
js 0x431d05
mov edx, edi
shr edx, 1
mov esi, edi
mov edi, edx
xor edi, 0x7fffffff
cmp edi, esi
mov edi, esi
jb 0x431d05
add edx, edi
cmp ecx, edx
cmovae edx, ecx
lea eax, [edx + 1]
cmp eax, 0x1000
jb 0x43223e
mov dword [ebp - 0x14], edx
push eax
call fcn.0040130b
add esp, 4
mov esi, eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], ecx
cmp edi, 0x10
mov eax, dword [ebp - 0x10]
jb 0x431de1
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x14], ecx
push ebx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x10], esi
add ebx, esi
mov esi, dword [ebp - 0x14]
push eax
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ecx, [edi + 1]
cmp ecx, 0x1000
jb 0x431d73
mov eax, dword [esi - 4]
add esi, 0xfffffffc
sub esi, eax
cmp esi, 0x20
jae 0x432265
add edi, 0x24
mov ecx, edi
mov esi, eax
push ecx
push esi
call fcn.00471733
add esp, 8
mov esi, dword [ebp - 0x10]
jmp 0x431e00
lea eax, [edx + ebx]
mov dword [ebp - 0x50], eax
cmp edi, 0x10
jb 0x431d90
mov esi, dword [ebp - 0x60]
lea eax, [ecx + ebx]
mov edi, ebx
mov dword [ebp - 0x14], eax
cmp eax, esi
jbe 0x431daf
lea eax, [esi + edx]
mov edi, ebx
cmp eax, ecx
jb 0x431daf
xor edi, edi
mov eax, esi
sub eax, ecx
jbe 0x431daf
mov edi, eax
inc edx
lea eax, [esi + ebx]
push edx
push esi
push eax
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
push edi
push dword [ebp - 0x10]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
sub ebx, edi
mov eax, dword [ebp - 0x14]
add eax, edi
add esi, edi
push ebx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
jmp 0x431e03
push ebx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, dword [ebp - 0x24]
inc ecx
add ebx, esi
lea eax, [ebp - 0x60]
push ecx
push eax
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [ebp - 0x60], esi
mov ecx, dword [ebp + 0x18]
movsd xmm0, qword [ebp - 0x50]
movsd qword [ebp - 0x31c], xmm0
movups xmm0, xmmword [ebp - 0x60]
movups xmmword [ebp - 0x32c], xmm0
cmp dword [ebp - 0x318], 0x10
jb 0x431e2f
mov eax, dword [ebp - 0x32c]
jmp 0x431e35
lea eax, [ebp - 0x32c]
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
push eax
push ecx
call fcn.00471674
add esp, 0x10
cmp dword [ebp - 0x64], 0x10
jb 0x431e50
mov eax, dword [ebp - 0x78]
jmp 0x431e53
lea eax, [ebp - 0x78]
mov dword [ebp - 0x68], 0
mov byte [eax], 0
mov esi, dword [0x478678]
test esi, esi
jne 0x431fca
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0xc03d1208
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x431ed5
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0x44b024cc
cmp si, 2
jb 0x431ec7
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0x44b024cc
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x431eb4
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x431fb1
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x431fb1
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x431f83
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x431f33
add edi, dword [ebp - 0x14]
mov edx, 0x44b024cc
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x431f1f
jmp 0x431f38
mov edx, 0x44b024cc
cmp edx, ecx
jne 0x431f00
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x431fc4
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x431fc4
mov al, byte [esi]
mov ecx, 0x44b024cc
mov edi, 0x44b024cc
cmp al, 0x2e
je 0x431f8b
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x431f6e
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x431fb1
mov al, byte [esi + 1]
test al, al
je 0x431fac
add esi, 2
mov ecx, 0x44b024cc
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x431f9a
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x431fc4
cmp dword [edx + 0x18], 0
jne 0x431e85
mov dword [0x478678], esi
push dword [ebp - 0x34]
call esi
mov esi, dword [0x47867c]
test esi, esi
jne 0x43213c
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, 0x40fccd88
xor edi, edi
mov dword [ebp - 0x24], eax
mov edx, eax
test edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], edx
je 0x432047
mov esi, dword [edx + 0x2c]
add esi, 0xfffffff8
mov edx, 0xd23dfe92
cmp si, 2
jb 0x432039
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
movzx esi, si
shr esi, 1
add esi, esi
mov edx, 0xd23dfe92
xor edi, edi
movsx ebx, byte [eax + edi]
xor ebx, edx
imul edx, ebx, 0x1000193
add edi, 2
cmp esi, edi
jne 0x432026
mov edi, dword [ebp - 0x1c]
cmp edx, edi
mov edx, dword [ebp - 0x18]
jne 0x432123
mov esi, dword [edx + 0x18]
mov eax, dword [esi + 0x3c]
mov ebx, dword [esi + eax + 0x78]
test ebx, ebx
je 0x432123
mov eax, dword [esi + eax + 0x7c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], ebx
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
mov ebx, dword [eax + 0x18]
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
sub ebx, 1
jb 0x4320f5
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, esi
mov edi, dword [eax + ebx*4]
mov al, byte [esi + edi]
test al, al
je 0x4320a5
add edi, dword [ebp - 0x14]
mov edx, 0xd23dfe92
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [edi]
inc edi
test al, al
jne 0x432091
jmp 0x4320aa
mov edx, 0xd23dfe92
cmp edx, ecx
jne 0x432072
mov edx, dword [ebp - 0x20]
mov eax, dword [esi + edx + 0x1c]
add eax, esi
mov ecx, dword [esi + edx + 0x24]
add ecx, esi
movzx ecx, word [ecx + ebx*2]
mov eax, dword [eax + ecx*4]
add esi, eax
cmp edx, eax
jge 0x432136
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
cmp eax, esi
jbe 0x432136
mov al, byte [esi]
mov ecx, 0xd23dfe92
mov edi, 0xd23dfe92
cmp al, 0x2e
je 0x4320fd
movsx eax, al
xor eax, edi
imul edi, eax, 0x1000193
mov al, byte [esi + 1]
inc esi
jmp 0x4320e0
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x432123
mov al, byte [esi + 1]
test al, al
je 0x43211e
add esi, 2
mov ecx, 0xd23dfe92
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
mov al, byte [esi]
inc esi
test al, al
jne 0x43210c
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov edx, dword [edx]
xor esi, esi
cmp edx, dword [ebp - 0x24]
je 0x432136
cmp dword [edx + 0x18], 0
jne 0x431ff7
mov dword [0x47867c], esi
push dword [ebp - 0x48]
call esi
mov eax, dword [ebp - 0x318]
cmp eax, 0x10
jb 0x43217f
mov ecx, dword [ebp - 0x32c]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x432175
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x288]
cmp eax, 0x10
jb 0x4321bd
mov ecx, dword [ebp - 0x29c]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4321b3
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
mov eax, dword [ebp - 0x1bc]
cmp eax, 0x10
jb 0x4321f7
mov ecx, dword [ebp - 0x1d0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x4321ed
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
lea ecx, [ebp - 0x38c]
call fcn.0040d3aa
mov eax, dword [ebp - 0x64]
cmp eax, 0x10
jb 0x432236
mov ecx, dword [ebp - 0x78]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x43222c
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x432265
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.00471733
add esp, 8
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
test eax, eax
je 0x432256
push eax
mov esi, edx
call fcn.004716fe
mov ecx, esi
add esp, 4
mov esi, eax
jmp 0x431d13
xor esi, esi
xor ecx, ecx
dec ecx
jmp 0x431d13
call fcn.00401301
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]