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

Disassembly:
add byte [edi - 0x7d], bl
mov ebp, 0xffffeb24
add byte [ebp + 0xf], dh
mov dword [ebp - 0x6ec], 0
jmp 0x437372
push edi
add edi, 0x15903
add edi, 0x1095d
pop edi
push edx
push edx
add esp, 4
add edx, 0x9125
pop edx
push edi
push ecx
add esp, 4
call 0x4373a0
add byte [edx], bh
aaa
dec esi
cmp al, 0x46
xor cl, byte [ebp + 0x3e]
add esp, 4
pop edi
cmp dword [ebp - 0x6ec], 0
jne 0x4373ee
push ebx
call 0x4373bc
add byte [edi + 0x3d], cl
inc ecx
inc esi
dec ebp
aas
inc ebx
dec ecx
add esp, 4
pop ebx
push ecx
or ecx, 0x1322a
sub ecx, 0x9333
pop ecx
push esi
jmp 0x4373d8
sub esi, 0x1400f
pop esi
mov dword [ebp - 0x738], 0
jmp 0x437f15
push ebx
sub ebx, 0x988f
xor ebx, 0x82db
and ebx, 0x942b
pop ebx
push edi
push eax
add esp, 4
sub edi, 0x21de
add edi, 0x104f8
sub edi, 0x15f04
sub edi, 0x45dd
pop edi
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 0x43745f
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x437750
mov ecx, dword [ebp - 0x14e8]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x14ec], edx
jne 0x437487
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x437750
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 0x4374b9
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
jmp 0x437750
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14f0]
mov dword [ebp - 0x6f0], eax
jne 0x4374de
mov ecx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], ecx
jmp 0x437750
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 0x437538
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 0x437744
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 0x4375a8
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 0x43765a
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
test edx, edx
je 0x43765a
push ebx
push eax
add esp, 4
xor ebx, 0x5744
or ebx, 0x1580f
and ebx, 0x15c2c
pop ebx
push eax
push edi
add esp, 4
xor eax, 0x9c15
xor eax, 0xfbb6
pop eax
push eax
and eax, 0x11796
pop eax
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 0x43764c
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 0x437653
jmp 0x437599
jmp 0x43765a
push ecx
push ecx
add esp, 4
add ecx, 0xe78a
pop ecx
push edi
push eax
add esp, 4
xor edi, 0x10f90
or edi, 0x42fe
add edi, 0x1219a
sub edi, 0xe80a
pop edi
push edi
and edi, 0x185dd
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 0x4376b9
mov dword [ebp - 0xc30], 0
jmp 0x437728
push esi
or esi, 0x42f2
pop esi
push edi
push esi
add esp, 4
or edi, 0xedb7
and edi, 0x69bf
call 0x4376e1
add byte [edi + 0x4a], al
dec esi
inc edx
inc edx
dec esp
push eax
dec ecx
inc ecx
add esp, 4
or edi, 0x5d32
pop edi
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 0x43771e
mov dword [ebp - 0xc30], 0xffffffff
jmp 0x437728
mov dword [ebp - 0xc30], 1
cmp dword [ebp - 0xc30], 0
jne 0x43773f
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x3c4], ecx
jmp 0x437750
jmp 0x437529
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0
je 0x43782b
push ebx
and ebx, 0xb81f
xor ebx, 0xb2c6
jmp 0x43776f
pop ebx
push edx
add edx, 0x15587
call 0x437785
add byte [edi], dh
xor al, 0x48
inc edi
dec ebp
xor eax, 0xc4834f46
add al, 0x81
ljmp 0x8b5a
push eax
push ebx
add esp, 4
jmp 0x437835
jmp 0x43783c
and eax, 0xed5f
pop eax
push edi
and edi, 0x5039
add edi, 0x15b3f
jmp 0x437856
add edi, 0x473
pop edi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x18b8], eax
mov ecx, dword [ebp - 0x18b8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18bc], edx
mov eax, dword [ebp - 0x18bc]
mov dword [ebp - 0x14f4], eax
push edi
call 0x437894
add byte [ebp + 0x3e], cl
cmp esi, dword [esp + esi]
dec ebx
dec ebx
xor al, byte [ebx - 0x107efb3c]
mov edx, 0x5f0000fc
push ebx
push eax
add esp, 4
add ebx, 0x375c
pop ebx
push edx
push ebx
add esp, 4
or edx, 0xe63c
pop edx
cmp dword [ebp - 0x14f4], 0
jne 0x4378ce
mov dword [ebp - 0x2e0], 0
jmp 0x437b75
mov ecx, dword [ebp - 0x14f4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc3c], eax
push ecx
push eax
add esp, 4
jmp 0x4378ec
pop ecx
push eax
push edx
add esp, 4
sub eax, 0x114e9
jmp 0x4378fd
and eax, 0x2b6c
pop eax
push edi
add edi, 0x11dc8
or edi, 0x146d8
pop edi
cmp dword [ebp - 0xc3c], 0
jne 0x43792a
mov dword [ebp - 0x2e0], 0
jmp 0x437b75
mov ecx, dword [ebp - 0xc3c]
mov dword [ebp - 0x4dc], ecx
push eax
xor eax, 0xf954
jmp 0x437946
add eax, 0xea96
xor eax, 0xc69c
pop eax
push ecx
xor ecx, 0x16c88
or ecx, 0x11395
jmp 0x437967
pop ecx
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc38], edx
mov eax, dword [ebp - 0x4dc]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc34], ecx
xor edx, edx
mov word [ebp - 0x200], dx
xor eax, eax
mov word [ebp - 0x34], ax
push esi
push esi
add esp, 4
add esi, 0x354a
pop esi
push esi
push ebx
add esp, 4
jmp 0x4379ab
sub esi, 0xf0
sub esi, 0x7e5a
pop esi
push edx
push esi
add esp, 4
and edx, 0xd157
pop edx
mov ecx, dword [ebp - 0xc34]
mov dx, word [ecx]
mov word [ebp - 0xf86], dx
mov eax, dword [ebp - 0xc34]
add eax, 2
mov dword [ebp - 0xc34], eax
mov cx, word [ebp - 0xf86]
mov word [ebp - 0x200], cx
mov edx, dword [ebp - 0xc38]
mov ax, word [edx]
mov word [ebp - 0xf88], ax
mov ecx, dword [ebp - 0xc38]
add ecx, 2
mov dword [ebp - 0xc38], ecx
mov dx, word [ebp - 0xf88]
mov word [ebp - 0x34], dx
push ecx
push esi
add esp, 4
jmp 0x437a28
xor ecx, 0xc9f8
and ecx, 0xc407
jmp 0x437a3a
pop ecx
push edi
push edi
add esp, 4
jmp 0x437a46
xor edi, 0x16ea8
pop edi
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x437a6a
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x14fc], ecx
jmp 0x437ac4
movzx eax, word [ebp - 0x200]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x437992
movzx edx, word [ebp - 0x200]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x437992
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x437aae
mov dword [ebp - 0x14f8], 0xffffffff
jmp 0x437ab8
mov dword [ebp - 0x14f8], 1
mov eax, dword [ebp - 0x14f8]
mov dword [ebp - 0x14fc], eax
cmp dword [ebp - 0x14fc], 0
jne 0x437b0d
push eax
push edx
add esp, 4
add eax, 0x4d69
sub eax, 0x14488
pop eax
push esi
push ebx
add esp, 4
sub esi, 0x8a36
or esi, 0x17c6c
sub esi, 0x14bc0
pop esi
push ecx
or ecx, 0x62e6
pop ecx
mov ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x2e0], ecx
jmp 0x437b75
push ebx
sub ebx, 0xc549
and ebx, 0x11f72
call 0x437b27
add byte [edi], bh
dec ecx
xor eax, 0x3e3e3a3b
add esp, 4
pop ebx
push edx
or edx, 0x3e7f
or edx, 0x7ffe
or edx, 0x55f
pop edx
mov edx, dword [ebp - 0x4dc]
mov eax, dword [edx]
mov dword [ebp - 0x4dc], eax
mov ecx, dword [ebp - 0x4dc]
cmp ecx, dword [ebp - 0xc3c]
je 0x437b6b
mov edx, dword [ebp - 0x4dc]
cmp dword [edx + 0x30], 0
jne 0x437936
mov dword [ebp - 0x2e0], 0
push edx
push edx
add esp, 4
xor edx, 0x1735d
sub edx, 0x58c0
or edx, 0x4581
pop edx
push esi
push ebx
add esp, 4
xor esi, 0x5e3a
add esi, 0x5b73
pop esi
push edx
xor edx, 0x12151
pop edx
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2fc], ecx
push edx
call 0x437bc6
add byte [edx + 0x4a], cl
cmp eax, 0x3f503b34
dec esp
add esp, 4
xor edx, 0x1391c
or edx, 0x157b
pop edx
push edi
push edx
add esp, 4
add edi, 0xd1f0
xor edi, 0x5e7e
pop edi
mov dword [ebp - 0x70c], 0
mov edx, dword [ebp - 0x2fc]
mov dword [ebp - 0x1500], edx
cmp dword [ebp - 0x1500], 0
jne 0x437c18
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x437f09
mov ecx, dword [ebp - 0x1500]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1504], edx
jne 0x437c40
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x437f09
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1504]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1508], ecx
cmp dword [ebp - 0x1508], 0
jne 0x437c72
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
jmp 0x437f09
mov eax, dword [ebp - 0x2fc]
add eax, dword [ebp - 0x1508]
mov dword [ebp - 0x700], eax
jne 0x437c97
mov ecx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], ecx
jmp 0x437f09
mov edx, dword [ebp - 0x700]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18c0], eax
mov ecx, dword [ebp - 0x700]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18c4], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18c8], ecx
mov dword [ebp - 0x704], 0
jmp 0x437cf1
mov edx, dword [ebp - 0x704]
add edx, 1
mov dword [ebp - 0x704], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x704]
cmp ecx, dword [eax + 0x18]
jae 0x437efd
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c0]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x708], ecx
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18c8]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18cc], eax
mov dword [ebp - 0x184], 0
jmp 0x437d61
mov ecx, dword [ebp - 0x184]
add ecx, 1
mov dword [ebp - 0x184], ecx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
test eax, eax
je 0x437e13
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
test edx, edx
je 0x437e13
push esi
push edx
add esp, 4
or esi, 0xa78c
jmp 0x437d9f
pop esi
push esi
and esi, 0x11b0
add esi, 0xc624
pop esi
push eax
push ebx
add esp, 4
sub eax, 0x857d
or eax, 0xb2d2
pop eax
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
cmp ecx, eax
je 0x437e05
mov ecx, dword [ebp - 0x708]
add ecx, dword [ebp - 0x184]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x184]
movsx ecx, byte [ebp + eax - 0x804]
cmp edx, ecx
jne 0x437e0c
jmp 0x437d52
jmp 0x437e13
push esi
and esi, 0x114b7
call 0x437e2a
add byte [ecx + 0x36], cl
cmp eax, 0x32423841
add esp, 4
xor esi, 0x16d94
call 0x437e41
add byte [eax + 0x45], dl
xor bh, byte [esi]
xor esi, dword [edi]
cmp byte [ebx - 0x7d], cl
les eax, [esi + ebx*2]
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
cmp eax, edx
jne 0x437e72
mov dword [ebp - 0xc40], 0
jmp 0x437ee1
push eax
push ebx
add esp, 4
or eax, 0xab47
call 0x437e8d
add byte [edi + 0x32], cl
dec edx
xor eax, 0x3d434e3b
dec eax
push eax
add esp, 4
call 0x437ea0
add byte [edx + 0x40], al
inc esp
inc ebx
dec ebp
inc ebx
xor cl, byte [eax + 0x3c]
cmp byte [ebx - 0x74a7fb3c], al
test eax, edi
clc
invalid
cmp dword [ebp - 0xc40], 0
jne 0x437ef8
mov ecx, dword [ebp - 0x18cc]
mov dword [ebp - 0x4e0], ecx
jmp 0x437f09
jmp 0x437ce2
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x738], eax
push ebx
add ebx, 0x161b6
jmp 0x437f23
xor ebx, 0x16c8a
add ebx, 0x504d
pop ebx
push esi
push edi
add esp, 4
and esi, 0x14bc6
jmp 0x437f40
and esi, 0x7952
pop esi
mov ecx, dword [ebp - 0x3cc]
add ecx, 0xe
mov dword [ebp - 0x1918], ecx
push esi
push eax
add esp, 4
and esi, 0x4504
sub esi, 0x14742
jmp 0x437f6d
call 0x437f7c
add byte [ebx], dh
dec edi
inc eax
cmp byte [ecx + 0x47], al
aaa
inc ebx
inc ecx
add esp, 4
pop esi
push edi
xor edi, 0x8b92
pop edi
cmp dword [ebp - 0x3cc], 0
je 0x437f9a
cmp dword [ebp - 0xa5c], 0
jne 0x437fe0
push edi
push ebx
add esp, 4
and edi, 0xe235
pop edi
push edi
push edi
add esp, 4
jmp 0x437fb0
call 0x437fbc
add byte [0x3b504b3a], bh
dec edx
add esp, 4
or edi, 0x2f82
xor edi, 0x352c
pop edi
mov edx, dword [ebp - 0x738]
mov dword [ebp - 0x18d0], edx
push 0
call dword [ebp - 0x18d0]
mov dword [ebp - 0x1fb0], 0xa
push eax
push edx
add esp, 4
and eax, 0x139c2
xor eax, 0x1302e
xor eax, 0x8a65
or eax, 0x6fb
pop eax
push eax
or eax, 0x1130a
pop eax
push ecx
push ecx
add esp, 4
add ecx, 0x13fc5
pop ecx
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 edi
sub edi, 0xedeb
sub edi, 0xf33c
add edi, 0x13e6e
jmp 0x438062
pop edi
push ebx
sub ebx, 0x15b47
pop ebx
push ebx
add ebx, 0x4804
xor ebx, 0x176bc
pop ebx
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 esi
xor esi, 0x12e75
pop esi
push ebx
push eax
add esp, 4
sub ebx, 0x17c7f
xor ebx, 0x5487
pop ebx
push esi
push ecx
add esp, 4
xor esi, 0x33ab
add esi, 0xad81
xor esi, 0xc2b3
pop esi
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 edi
push ecx
add esp, 4
add edi, 0x4a45
add edi, 0x369a
add edi, 0xb93b
pop edi
push esi
xor esi, 0x618
or esi, 0xe50e
xor esi, 0xcc61
xor esi, 0xd2ea
pop esi
cmp dword [ebp - 0x150c], 0
jne 0x438185
mov dword [ebp - 0x2a8], 0
jmp 0x43842c
mov ecx, dword [ebp - 0x150c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc4c], eax
push edx
push ebx
add esp, 4
jmp 0x4381a4
and edx, 0x14f4c
call 0x4381b9
add byte [eax + 0x39], cl
dec esp
inc edx
dec ebx
dec esp
cmp dword [ebx + eax*4], esi
les eax, [edx + ebx*2]
push ebx
push esi
add esp, 4
add ebx, 0x1b31
pop ebx
cmp dword [ebp - 0xc4c], 0
jne 0x4381e1
mov dword [ebp - 0x2a8], 0
jmp 0x43842c
mov ecx, dword [ebp - 0xc4c]
mov dword [ebp - 0x4e4], ecx
push edi
call 0x4381fc
add byte [esi], bh
push eax
dec eax
inc esp
inc ebx
xor eax, 0x4c48335
sub edi, 0x159e7
pop edi
push ecx
sub ecx, 0x197c
call 0x43821b
add byte [ebx + 0x3f], al
xor eax, dword [ecx + 0x3a]
cmp byte [edi], dh
dec ecx
add esp, 4
pop ecx
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 eax
xor eax, 0x2e0d
sub eax, 0x101e4
call 0x438264
add byte [0x4d37344a], dh
cmp eax, 0xc483393b
add al, 0xe8
or eax, dword [eax]
add byte [eax], al
add byte [ebx + 0x3e], cl
cmp bh, byte [ecx]
xor eax, 0x413c4d3d
cmp eax, dword [ebx - 0x74a7fb3c]
lea edi, [ebx + esi*8 - 0x74990001]
adc dword [esi - 0x77], esp
xchg ebp, eax
jbe 0x438279
add al, 0x58
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
push edx
add esp, 4
sub eax, 0x9c09
pop eax
push edx
add edx, 0x4a37
jmp 0x4382ea
invalid
sub edx, 0x100f1
pop edx
push esi
push ebx
add esp, 4
jmp 0x4382fd
add esi, 0x5f25
pop esi
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x438321
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x1514], ecx
jmp 0x43837b
movzx eax, word [ebp - 0x204]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x438249
movzx edx, word [ebp - 0x204]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x438249
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x438365
mov dword [ebp - 0x1510], 0xffffffff
jmp 0x43836f
mov dword [ebp - 0x1510], 1
mov eax, dword [ebp - 0x1510]
mov dword [ebp - 0x1514], eax
cmp dword [ebp - 0x1514], 0
jne 0x4383c4
push ecx
and ecx, 0x183ae
or ecx, 0x2df6
xor ecx, 0x6da2
add ecx, 0x5d53
pop ecx
push ebx
push eax
add esp, 4
or ebx, 0xbfdb
sub ebx, 0x886e
xor ebx, 0x2696
pop ebx
mov ecx, dword [ebp - 0x4e4]
mov dword [ebp - 0x2a8], ecx
jmp 0x43842c
push ecx
push esi
add esp, 4
and ecx, 0x17d9
xor ecx, 0x8f80
add ecx, 0x115b4
and ecx, 0x98f
pop ecx
push edi
sub edi, 0x1885
pop edi
push esi
push edi
add esp, 4
sub esi, 0x1f11
pop esi
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 0x438422
mov edx, dword [ebp - 0x4e4]
cmp dword [edx + 0x30], 0
jne 0x4381ed
mov dword [ebp - 0x2a8], 0
push eax
push ebx
add esp, 4
sub eax, 0x1729e
and eax, 0x16a6f
add eax, 0xf4b0
pop eax
push ebx
call 0x438454
add byte [ecx], bh
dec esi
cmp byte [edi + 0x3b], al
cmp dword [ecx + 0x32], eax
add esp, 4
xor ebx, 0x86e9
pop ebx
cmp dword [ebp - 0x2a8], 0
jne 0x438d63
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 ecx
push ebx
add esp, 4
sub ecx, 0x12ed6
pop ecx
push ebx
and ebx, 0x10807
and ebx, 0xbe0c
and ebx, 0x12b6d
pop ebx
push ebx
push ecx
add esp, 4
and ebx, 0x16b3
xor ebx, 0x12bec
pop ebx
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 ebx
sub ebx, 0xf3da
pop ebx
push edi
xor edi, 0x85f9
jmp 0x4385d0
add edi, 0x2c34
pop edi
push edi
push ecx
add esp, 4
and edi, 0x1315a
pop edi
push ecx
sub ecx, 0x87d2
pop ecx
cmp dword [ebp - 0x1518], 0
jne 0x438603
mov dword [ebp - 0x710], 0
jmp 0x4388aa
mov edx, dword [ebp - 0x1518]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc58], ecx
push ecx
xor ecx, 0x12c96
pop ecx
push ebx
push eax
add esp, 4
or ebx, 0x1420d
pop ebx
push ecx
push ecx
add esp, 4
or ecx, 0x1725e
add ecx, 0xd7f6
or ecx, 0x8d90
and ecx, 0x6473
pop ecx
cmp dword [ebp - 0xc58], 0
jne 0x43865f
mov dword [ebp - 0x710], 0
jmp 0x4388aa
mov edx, dword [ebp - 0xc58]
mov dword [ebp - 0x4e8], edx
push eax
push edi
add esp, 4
and eax, 0x7f53
pop eax
push ebx
or ebx, 0x153ab
and ebx, 0x12c6
jmp 0x43868b
jmp 0x438694
pop ebx
push edx
or edx, 0xb711
pop edx
lea eax, [ebp - 0x16e8]
mov dword [ebp - 0xc54], eax
mov ecx, dword [ebp - 0x4e8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc50], edx
xor eax, eax
mov word [ebp - 0x208], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push edx
push edx
add esp, 4
add edx, 0xc007
xor edx, 0x124f1
jmp 0x4386e0
or edx, 0x872d
pop edx
push eax
push eax
add esp, 4
add eax, 0x13eda
xor eax, 0x6225
pop eax
mov edx, dword [ebp - 0xc50]
mov ax, word [edx]
mov word [ebp - 0xf8e], ax
mov ecx, dword [ebp - 0xc50]
add ecx, 2
mov dword [ebp - 0xc50], ecx
mov dx, word [ebp - 0xf8e]
mov word [ebp - 0x208], dx
mov eax, dword [ebp - 0xc54]
mov cx, word [eax]
mov word [ebp - 0xf90], cx
mov edx, dword [ebp - 0xc54]
add edx, 2
mov dword [ebp - 0xc54], edx
mov ax, word [ebp - 0xf90]
mov word [ebp - 0x3c], ax
push edx
add edx, 0x188f
add edx, 0x17533
pop edx
push ecx
call 0x43876f
add byte [edx + 0x39], cl
cmp dword [edi + 0x3f], eax
dec eax
xor al, 0x46
dec edi
dec esp
add esp, 4
call 0x43877e
add byte [edi], bh
dec ebx
dec edi
cmp eax, 0xc483464c
add al, 0x59
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x43879f
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1560], edx
jmp 0x4387f9
movzx ecx, word [ebp - 0x208]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x4386c7
movzx eax, word [ebp - 0x208]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x4386c7
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x4387e3
mov dword [ebp - 0x151c], 0xffffffff
jmp 0x4387ed
mov dword [ebp - 0x151c], 1
mov ecx, dword [ebp - 0x151c]
mov dword [ebp - 0x1560], ecx
cmp dword [ebp - 0x1560], 0
jne 0x438842
push edx
sub edx, 0x6e64
jmp 0x438811
sub edx, 0x10dea
pop edx
push ecx
add ecx, 0x86f9
and ecx, 0x13732
and ecx, 0xc5f8
add byte [ecx + 0x56], bl
and esi, 0x15543
pop esi
mov edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x710], edx
jmp 0x4388aa
push ecx
push esi
add esp, 4
call 0x438857
add byte [edi + 0x50], cl
cmp edi, dword [edi]
inc ebp
cmp byte [ecx + 0x50], cl
cmp byte [ebx - 0x7d], al
les eax, [ebx + ebp*8]
add edi, dword [edi]
cmp byte [ecx + ebx*2 + 0x53], al
and ebx, 0x9c2b
add ebx, 0x154e4
xor ebx, 0x47ad
pop ebx
mov eax, dword [ebp - 0x4e8]
mov ecx, dword [eax]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4e8]
cmp edx, dword [ebp - 0xc58]
je 0x4388a0
mov eax, dword [ebp - 0x4e8]
cmp dword [eax + 0x30], 0
jne 0x43866b
mov dword [ebp - 0x710], 0
push esi
sub esi, 0x141c5
and esi, 0xf4d0
add esi, 0xd999
pop esi
push ecx
push edi
add esp, 4
or ecx, 0xc45a
add ecx, 0x39b9
or ecx, 0x1f4e
and ecx, 0x8a32
pop ecx
cmp dword [ebp - 0x710], 0
jne 0x438926
push edx
and edx, 0x6488
call 0x4388f9
add byte [eax + 0x46], cl
cmp byte [esi + 0x33], cl
cmp edi, dword [edx]
add esp, 4
sub edx, 0x10ae0
pop edx
push edx
or edx, 0x1513b
pop edx
push ebx
push eax
add esp, 4
and ebx, 0x61f5
pop ebx
mov dword [ebp - 0xa58], 0
jmp 0x43944e
push eax
xor eax, 0x70c8
and eax, 0x792c
sub eax, 0x17e81
call 0x438946
add byte [ecx], bh
cmp byte [eax + 0x46], cl
aas
inc esi
add esp, 4
pop eax
push ebx
or ebx, 0xd41c
add ebx, 0xed08
pop ebx
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x720], 0
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x1564], eax
cmp dword [ebp - 0x1564], 0
jne 0x438997
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x438c88
mov edx, dword [ebp - 0x1564]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1568], eax
jne 0x4389bf
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x438c88
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1568]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1570], edx
cmp dword [ebp - 0x1570], 0
jne 0x4389f1
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
jmp 0x438c88
mov ecx, dword [ebp - 0x300]
add ecx, dword [ebp - 0x1570]
mov dword [ebp - 0x714], ecx
jne 0x438a16
mov edx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], edx
jmp 0x438c88
mov eax, dword [ebp - 0x714]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x18e0], ecx
mov edx, dword [ebp - 0x714]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x18e4], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x18e8], edx
mov dword [ebp - 0x718], 0
jmp 0x438a70
mov eax, dword [ebp - 0x718]
add eax, 1
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x718]
cmp edx, dword [ecx + 0x18]
jae 0x438c7c
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e0]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x71c], edx
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e4]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x18e8]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x18ec], ecx
mov dword [ebp - 0x188], 0
jmp 0x438ae0
mov edx, dword [ebp - 0x188]
add edx, 1
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
test ecx, ecx
je 0x438b92
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
test eax, eax
je 0x438b92
push edi
xor edi, 0xfe3a
jmp 0x438b19
xor edi, 0xf264
xor edi, 0x17245
pop edi
push edx
xor edx, 0x148c0
call 0x438b3b
add byte [ebp + 0x4c], cl
push eax
dec edx
dec ebp
dec ebp
inc esp
add esp, 4
pop edx
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
cmp edx, ecx
je 0x438b84
mov edx, dword [ebp - 0x71c]
add edx, dword [ebp - 0x188]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x188]
movsx edx, byte [ebp + ecx - 0x830]
cmp eax, edx
jne 0x438b8b
jmp 0x438ad1
jmp 0x438b92
push edx
call 0x438ba3
add byte [ebx + 0x4a], al
cmp al, 0x4d
cmp eax, dword [eax + 0x44]
inc ebp
cmp dword [edx - 0x7d], eax
les eax, [eax + ebp*8]
or dword [eax], eax
add byte [eax], al
add byte [esi], bh
cmp al, 0x39
xor dl, byte [eax + 0x41]
dec ebx
inc edi
add esp, 4
or edx, 0x2f06
add edx, 0x10c97
pop edx
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
cmp ecx, eax
jne 0x438bf1
mov dword [ebp - 0xc5c], 0
jmp 0x438c60
push esi
push edi
add esp, 4
or esi, 0x1262b
pop esi
push eax
sub eax, 0xd120
xor eax, 0xe54b
sub eax, 0x10c64
call 0x438c1f
add byte [eax], bh
xor edi, dword [esi]
aaa
xor edi, dword [edi]
dec edi
cmp byte [ebx + eax*4 - 0x3c], al
add al, 0x58
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
or ecx, 0x20
cmp edx, ecx
jge 0x438c56
mov dword [ebp - 0xc5c], 0xffffffff
jmp 0x438c60
mov dword [ebp - 0xc5c], 1
cmp dword [ebp - 0xc5c], 0
jne 0x438c77
mov edx, dword [ebp - 0x18ec]
mov dword [ebp - 0x3c8], edx
jmp 0x438c88
jmp 0x438a61
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
cmp dword [ebp - 0x3c8], 0
je 0x438d63
push eax
jmp 0x438c9b
pop eax
push ebx
push ebx
add esp, 4
call 0x438cb1
add byte [eax + 0x32], cl
dec esp
push eax
inc eax
xor ecx, dword [esi + 0x3d]
inc ebx
add esp, 4
sub ebx, 0xd754
or ebx, 0x1d23
sub ebx, 0xca75
pop ebx
mov ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x18f0], ecx
push esi
push ecx
add esp, 4
or esi, 0x9d94
xor esi, 0x7a08
and esi, 0xc5d4
pop esi
push edi
push esi
add esp, 4
and edi, 0x576c
pop edi
push eax
and eax, 0x144b0
sub eax, 0x2659
pop eax
mov edx, dword [ebp - 0x18f0]
mov dword [ebp - 0x18f4], edx
lea eax, [ebp - 0x1628]
push eax
call dword [ebp - 0x18f4]
test eax, eax
jne 0x438d63
push ecx
sub ecx, 0x4089
add ecx, 0x82c0
pop ecx
push ebx
push edi
add esp, 4
or ebx, 0x12c42
or ebx, 0x158b9
and ebx, 0x592a
pop ebx
push edi
push edx
add esp, 4
add edi, 0xc4d3
pop edi
mov dword [ebp - 0xa58], 0
jmp 0x43944e
push esi
push ecx
add esp, 4
and esi, 0xfde4
pop esi
push edi
and edi, 0xe39b
call 0x438d86
add byte [ecx + 0x48], al
aaa
inc edx
inc esi
xor esi, dword [esi]
inc ebp
cmp dword [ecx - 0x7d], eax
les eax, [edi + ebx*2]
push ecx
push eax
add esp, 4
jmp 0x438d94
pop ecx
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 ebx
or ebx, 0x16860
pop ebx
push edx
push eax
add esp, 4
or edx, 0xa816
pop edx
push eax
push esi
add esp, 4
xor eax, 0x31b6
xor eax, 0xc636
xor eax, 0x12e85
and eax, 0x32eb
pop eax
cmp dword [ebp - 0x1574], 0
jne 0x438e07
mov dword [ebp - 0x2a8], 0
jmp 0x4390ae
mov edx, dword [ebp - 0x1574]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc68], ecx
push esi
push eax
add esp, 4
or esi, 0xd4c4
add esi, 0x112dd
add esi, 0x9d68
pop esi
push ecx
push ecx
add esp, 4
jmp 0x438e3e
or ecx, 0x17b95
xor ecx, 0xf369
pop ecx
cmp dword [ebp - 0xc68], 0
jne 0x438e63
mov dword [ebp - 0x2a8], 0
jmp 0x4390ae
mov edx, dword [ebp - 0xc68]
mov dword [ebp - 0x4ec], edx
push eax
jmp 0x438e76
pop eax
push edi
xor edi, 0x13305
pop edi
push ecx
push edi
add esp, 4
jmp 0x438e89
sub ecx, 0x16628
pop ecx
push ecx
jmp 0x438e9a
sub ecx, 0xafcb
pop ecx
lea eax, [ebp - 0x1628]
mov dword [ebp - 0xc64], eax
mov ecx, dword [ebp - 0x4ec]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc60], edx
xor eax, eax
mov word [ebp - 0x20c], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push edx
push ebx
add esp, 4
xor edx, 0x129a1
add edx, 0x8ebb
or edx, 0xb367
pop edx
push eax
or eax, 0xb07e
add eax, 0x11429
or eax, 0xfc88
and eax, 0x105f6
pop eax
mov edx, dword [ebp - 0xc60]
mov ax, word [edx]
mov word [ebp - 0xf92], ax
mov ecx, dword [ebp - 0xc60]
add ecx, 2
mov dword [ebp - 0xc60], ecx
mov dx, word [ebp - 0xf92]
mov word [ebp - 0x20c], dx
mov eax, dword [ebp - 0xc64]
mov cx, word [eax]
mov word [ebp - 0xf94], cx
mov edx, dword [ebp - 0xc64]
add edx, 2
mov dword [ebp - 0xc64], edx
mov ax, word [ebp - 0xf94]
mov word [ebp - 0x40], ax
push ebx
push esi
add esp, 4
add ebx, 0x4239
xor ebx, 0x7283
pop ebx
push edx
and edx, 0x24b6
and edx, 0x16fdf
call 0x438f82
add byte [esi], bh
cmp cl, byte [ebx + 0x32]
xor eax, 0x4e453238
add esp, 4
pop edx
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x438fa3
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x157c], edx
jmp 0x438ffd
movzx ecx, word [ebp - 0x20c]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x438ecb
movzx eax, word [ebp - 0x20c]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x438ecb
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x438fe7
mov dword [ebp - 0x1578], 0xffffffff
jmp 0x438ff1
mov dword [ebp - 0x1578], 1
mov ecx, dword [ebp - 0x1578]
mov dword [ebp - 0x157c], ecx
cmp dword [ebp - 0x157c], 0
jne 0x439046
push eax
or eax, 0xdd4c
xor eax, 0x1396e
pop eax
push esi
or esi, 0x14f17
xor esi, 0x1a82
call 0x43902e
add byte [esi], bh
aas
push eax
cmp al, 0x36
inc edx
inc esp
add esp, 4
add esi, 0x32cc
pop esi
mov edx, dword [ebp - 0x4ec]
mov dword [ebp - 0x2a8], edx
jmp 0x4390ae
push eax
push ebx
add esp, 4
call 0x439058
add byte [esp + ecx*2], bh
dec ebp
inc eax
xor al, 0x33
cmp byte [ebx + 0x8e804c4], al
add byte [eax], al
add byte [eax], al
cmp byte ds:[0x50434d34], dh
add esp, 4
and eax, 0x18195
xor eax, 0x161e3
pop eax
mov eax, dword [ebp - 0x4ec]
mov ecx, dword [eax]
mov dword [ebp - 0x4ec], ecx
mov edx, dword [ebp - 0x4ec]
cmp edx, dword [ebp - 0xc68]
je 0x4390a4
mov eax, dword [ebp - 0x4ec]
cmp dword [eax + 0x30], 0
jne 0x438e6f
mov dword [ebp - 0x2a8], 0
push eax
or eax, 0x6e71
and eax, 0x18224
xor eax, 0x8d72
pop eax
push edx
push edx
add esp, 4
sub edx, 0x136a1
pop edx
push edi
push eax
add esp, 4
jmp 0x4390d9
sub edi, 0x14abd
pop edi
mov ecx, dword [ebp - 0x2a8]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x304], edx
push edx
push edi
add esp, 4
xor edx, 0x184f5
xor edx, 0xc4c2
jmp 0x439106
and edx, 0xf81a
pop edx
push eax
or eax, 0x15448
sub eax, 0x14999
add eax, 0xa29e
pop eax
mov dword [ebp - 0x730], 0
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x1580], eax
cmp dword [ebp - 0x1580], 0
jne 0x439151
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x439442
mov edx, dword [ebp - 0x1580]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1584], eax
jne 0x439179
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x439442
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1584]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1588], edx
cmp dword [ebp - 0x1588], 0
jne 0x4391ab
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
jmp 0x439442
mov ecx, dword [ebp - 0x304]
add ecx, dword [ebp - 0x1588]
mov dword [ebp - 0x724], ecx
jne 0x4391d0
mov edx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], edx
jmp 0x439442
mov eax, dword [ebp - 0x724]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1900], ecx
mov edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1904], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1908], edx
mov dword [ebp - 0x728], 0
jmp 0x43922a
mov eax, dword [ebp - 0x728]
add eax, 1
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x728]
cmp edx, dword [ecx + 0x18]
jae 0x439436
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1900]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x72c], edx
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1904]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1908]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x190c], ecx
mov dword [ebp - 0x18c], 0
jmp 0x43929a
mov edx, dword [ebp - 0x18c]
add edx, 1
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x43934c
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
test eax, eax
je 0x43934c
push esi
push eax
add esp, 4
or esi, 0xae0a
sub esi, 0x6ed2
pop esi
push ecx
xor ecx, 0xafc6
sub ecx, 0x40d
xor ecx, 0x37eb
pop ecx
push edi
push ecx
add esp, 4
xor edi, 0x52ab
pop edi
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
cmp edx, ecx
je 0x43933e
mov edx, dword [ebp - 0x72c]
add edx, dword [ebp - 0x18c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x18c]
movsx edx, byte [ebp + ecx - 0x960]
cmp eax, edx
jne 0x439345
jmp 0x43928b
jmp 0x43934c
push esi
add esi, 0x11680
call 0x43935f
add byte [esi + eax*2 + 0x4e], cl
aas
xor eax, 0x4c48334
xor esi, 0x142dc
pop esi
push ecx
push ecx
add esp, 4
jmp 0x439377
and ecx, 0xa361
pop ecx
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
cmp ecx, eax
jne 0x4393ab
mov dword [ebp - 0xc6c], 0
jmp 0x43941a
push ebx
add ebx, 0x103a6
jmp 0x4393ba
pop ebx
push eax
add eax, 0x112e5
or eax, 0x6941
or eax, 0x15853
add eax, 0xc840
pop eax
push edx
add edx, 0x3d47
pop edx
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
or ecx, 0x20
cmp edx, ecx
jge 0x439410
mov dword [ebp - 0xc6c], 0xffffffff
jmp 0x43941a
mov dword [ebp - 0xc6c], 1
cmp dword [ebp - 0xc6c], 0
jne 0x439431
mov edx, dword [ebp - 0x190c]
mov dword [ebp - 0x4f0], edx
jmp 0x439442
jmp 0x43921b
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0xa58], ecx
push ecx
jmp 0x439456
jmp 0x43945b
xor ecx, 0xa500
xor ecx, 0x8659
pop ecx
push esi
push ebx
add esp, 4
sub esi, 0x2ba6
or esi, 0x15d3
and esi, 0x8280
pop esi
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x1910], edx
lea eax, [ebp - 0xc70]
push eax
push 0x40
mov ecx, dword [ebp - 0x158c]
push ecx
mov edx, dword [ebp - 0x3cc]
push edx
call dword [ebp - 0x1910]
test eax, eax
jne 0x4394f3
push edx
jmp 0x4394b7
and edx, 0xe393
or edx, 0xec03
pop edx
push ecx
add ecx, 0x15f4d
jmp 0x4394d1
add ecx, 0xc70e
jmp 0x4394de
pop ecx
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0x1914], eax
push 0
call dword [ebp - 0x1914]
mov ecx, dword [ebp - 0x1918]
mov dword [ebp - 0x734], ecx
jmp 0x439510
mov edx, dword [ebp - 0x734]
add edx, 1
mov dword [ebp - 0x734], edx
mov eax, dword [ebp - 0x734]
cmp eax, dword [ebp - 0xa5c]
jae 0x43956c
push eax
xor eax, 0x54b6
and eax, 0x13d42
xor eax, 0xfe56
add eax, 0x9910
pop eax
push ebx
push edx
add esp, 4
sub ebx, 0x15b07
pop ebx
push ecx
push edx
add esp, 4
xor ecx, 0x120ce
pop ecx
movzx ecx, byte [ebp - 0x381]
mov edx, dword [ebp - 0x734]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x734]
mov byte [ecx], al
jmp 0x439501
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x191c], edx
lea eax, [ebp - 0xc70]
push eax
mov ecx, dword [ebp - 0xc70]
push ecx
mov edx, dword [ebp - 0x158c]
push edx
mov eax, dword [ebp - 0x3cc]
push eax
call dword [ebp - 0x191c]
test eax, eax
jne 0x4395e4
push esi
push ebx
add esp, 4
add esi, 0x3404
call 0x4395b8
add byte [edx], dh
xor cl, byte [edi + ecx*2 + 0x50]
xor edi, dword [edx]
cmp eax, 0x4c4833e
add esi, 0x136a1
pop esi
push ecx
xor ecx, 0x1850c
and ecx, 0x12883
pop ecx
mov ecx, dword [ebp - 0x738]
mov dword [ebp - 0x1920], ecx
push 0
call dword [ebp - 0x1920]
push ecx
or ecx, 0x14a0a
pop ecx
push edx
jmp 0x4395f6
xor edx, 0xe0f4
or edx, 0xc8e1
jmp 0x439609
pop edx
push eax
push esi
add esp, 4
and eax, 0x1d9e
pop eax
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff06ff
pop ecx
push esi
pop ecx
mov edx, ecx
or ch, dh
adc byte [esi], al
push es
push es
push es
dec ebx
cmp eax, dword [esi + 0x55]
inc edi
cmp eax, 0x89494553
retf 0xf10a