Function at 0x40dc51
Capabilities:
Resolve function by parsing pe exports

Disassembly:
add esp, 4
add edx, 0xa8e4
xor edx, 0x162f
pop edx
push ecx
add ecx, 0x1a18
pop ecx
push eax
push eax
add esp, 4
add eax, 0x120d
and eax, 0x10002
call 0x40bf36
add byte [edx], bh
cmp dword [edi], edi
aaa
dec ebx
inc ebx
cmp dword [edi], esi
inc edx
add esp, 4
pop eax
push eax
sub eax, 0x3578
and eax, 0xb238
pop eax
mov edx, dword fs:[0x18]
mov dword [ebp - 0x1954], edx
mov eax, dword [ebp - 0x1954]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x1958], ecx
mov edx, dword [ebp - 0x1958]
mov dword [ebp - 0x15d8], edx
push edi
push edx
add esp, 4
sub edi, 0xc8ae
jmp 0x40bf83
add edi, 0xf6a
pop edi
push eax
push ecx
add esp, 4
sub eax, 0xc5b4
pop eax
push ebx
push edi
add esp, 4
or ebx, 0x17369
pop ebx
cmp dword [ebp - 0x15d8], 0
jne 0x40bfba
mov dword [ebp - 0x31c], 0
jmp 0x40c276
mov eax, dword [ebp - 0x15d8]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc98], edx
push ecx
push eax
add esp, 4
xor ecx, 0x134c7
sub ecx, 0x5a45
pop ecx
push ecx
push edi
add esp, 4
sub ecx, 0x4053
add ecx, 0x157aa
pop ecx
push eax
xor eax, 0xbaa0
add eax, 0x147db
pop eax
cmp dword [ebp - 0xc98], 0
jne 0x40c016
mov dword [ebp - 0x31c], 0
jmp 0x40c276
mov eax, dword [ebp - 0xc98]
mov dword [ebp - 0x504], eax
push edi
add edi, 0x10d03
sub edi, 0xe6e3
pop edi
push esi
push ecx
add esp, 4
add esi, 0x10f6d
or esi, 0x3408
xor esi, 0x72fc
pop esi
push esi
push ecx
add esp, 4
xor esi, 0x11fc1
pop esi
lea ecx, [ebp - 0x1738]
mov dword [ebp - 0xc94], ecx
mov edx, dword [ebp - 0x504]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc90], eax
xor ecx, ecx
mov word [ebp - 0x210], cx
xor edx, edx
mov word [ebp - 0x10c], dx
push esi
push ebx
add esp, 4
or esi, 0x3e6c
sub esi, 0xfef2
and esi, 0x1ca
add esi, 0x8d82
pop esi
push ebx
push esi
add esp, 4
or ebx, 0xcfcb
pop ebx
push edx
xor edx, 0xbbae
pop edx
mov eax, dword [ebp - 0xc90]
mov cx, word [eax]
mov word [ebp - 0x1032], cx
mov edx, dword [ebp - 0xc90]
add edx, 2
mov dword [ebp - 0xc90], edx
mov ax, word [ebp - 0x1032]
mov word [ebp - 0x210], ax
mov ecx, dword [ebp - 0xc94]
mov dx, word [ecx]
mov word [ebp - 0x1034], dx
mov eax, dword [ebp - 0xc94]
add eax, 2
mov dword [ebp - 0xc94], eax
mov cx, word [ebp - 0x1034]
mov word [ebp - 0x10c], cx
push ebx
push esi
add esp, 4
or ebx, 0x49bb
sub ebx, 0x16f5d
add ebx, 0x17a7
pop ebx
push ebx
and ebx, 0xd478
xor ebx, 0x14b1a
pop ebx
push edx
push eax
add esp, 4
and edx, 0x1e30
pop edx
movzx edx, word [ebp - 0x10c]
test edx, edx
jne 0x40c162
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
sub eax, ecx
mov dword [ebp - 0x15e0], eax
jmp 0x40c1c5
movzx edx, word [ebp - 0x210]
movzx eax, word [ebp - 0x10c]
cmp edx, eax
je 0x40c081
movzx ecx, word [ebp - 0x210]
xor ecx, 0x20
movzx edx, word [ebp - 0x10c]
cmp ecx, edx
je 0x40c081
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
cmp eax, ecx
jge 0x40c1af
mov dword [ebp - 0x15dc], 0xffffffff
jmp 0x40c1b9
mov dword [ebp - 0x15dc], 1
mov edx, dword [ebp - 0x15dc]
mov dword [ebp - 0x15e0], edx
cmp dword [ebp - 0x15e0], 0
jne 0x40c20e
push edx
push edx
add esp, 4
call 0x40c1df
add byte [ebx + 0x34], cl
xor eax, dword [ebx + esi + 0x32]
add esp, 4
pop edx
push edi
push ebx
add esp, 4
add edi, 0x4393
xor edi, 0x3885
jmp 0x40c1f9
or edi, 0x4730
pop edi
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x31c], eax
jmp 0x40c276
push ebx
push edx
add esp, 4
xor ebx, 0x12269
jmp 0x40c221
pop ebx
push edi
push esi
add esp, 4
and edi, 0x177f2
sub edi, 0xf887
and edi, 0x139bb
or edi, 0x9354
pop edi
mov ecx, dword [ebp - 0x504]
mov edx, dword [ecx]
mov dword [ebp - 0x504], edx
mov eax, dword [ebp - 0x504]
cmp eax, dword [ebp - 0xc98]
je 0x40c26c
mov ecx, dword [ebp - 0x504]
cmp dword [ecx + 0x30], 0
jne 0x40c022
mov dword [ebp - 0x31c], 0
push ecx
jmp 0x40c27f
jmp 0x40c286
and ecx, 0x16fa0
pop ecx
push edi
push eax
add esp, 4
sub edi, 0x16b3b
jmp 0x40c2a1
xor edi, 0x13903
pop edi
cmp dword [ebp - 0x31c], 0
jne 0x40cbc1
mov edx, 0x6b
mov word [ebp - 0x1774], dx
mov eax, 0x65
mov word [ebp - 0x1772], ax
mov ecx, 0x72
mov word [ebp - 0x1770], cx
mov edx, 0x6e
mov word [ebp - 0x176e], dx
mov eax, 0x65
mov word [ebp - 0x176c], ax
mov ecx, 0x6c
mov word [ebp - 0x176a], cx
mov edx, 0x33
mov word [ebp - 0x1768], dx
mov eax, 0x32
mov word [ebp - 0x1766], ax
mov ecx, 0x2e
mov word [ebp - 0x1764], cx
mov edx, 0x64
mov word [ebp - 0x1762], dx
mov eax, 0x6c
mov word [ebp - 0x1760], ax
mov ecx, 0x6c
mov word [ebp - 0x175e], cx
xor edx, edx
mov word [ebp - 0x175c], dx
push eax
sub eax, 0x6915
sub eax, 0x281b
and eax, 0x4136
pop eax
push eax
jmp 0x40c369
sub eax, 0xe9d8
pop eax
push eax
jmp 0x40c379
xor eax, 0x18321
pop eax
mov byte [ebp - 0x894], 0x4c
mov byte [ebp - 0x893], 0x6f
mov byte [ebp - 0x892], 0x61
mov byte [ebp - 0x891], 0x64
mov byte [ebp - 0x890], 0x4c
mov byte [ebp - 0x88f], 0x69
mov byte [ebp - 0x88e], 0x62
mov byte [ebp - 0x88d], 0x72
mov byte [ebp - 0x88c], 0x61
mov byte [ebp - 0x88b], 0x72
mov byte [ebp - 0x88a], 0x79
mov byte [ebp - 0x889], 0x57
mov byte [ebp - 0x888], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x195c], eax
mov ecx, dword [ebp - 0x195c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1960], edx
mov eax, dword [ebp - 0x1960]
mov dword [ebp - 0x15e4], eax
push ebx
push eax
add esp, 4
xor ebx, 0xb1c2
sub ebx, 0xb017
pop ebx
push ebx
push edx
add esp, 4
xor ebx, 0xec55
jmp 0x40c425
pop ebx
push edi
push eax
add esp, 4
jmp 0x40c433
pop edi
cmp dword [ebp - 0x15e4], 0
jne 0x40c44c
mov dword [ebp - 0x750], 0
jmp 0x40c708
mov ecx, dword [ebp - 0x15e4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xca4], eax
push ecx
or ecx, 0x122a8
or ecx, 0x79c7
and ecx, 0xdf06
or ecx, 0xe2b8
pop ecx
push esi
push edi
add esp, 4
sub esi, 0x32f
or esi, 0x141f3
or esi, 0x17e47
pop esi
cmp dword [ebp - 0xca4], 0
jne 0x40c4a8
mov dword [ebp - 0x750], 0
jmp 0x40c708
mov ecx, dword [ebp - 0xca4]
mov dword [ebp - 0x508], ecx
push ebx
push eax
add esp, 4
call 0x40c4c6
add byte [0x434e3533], bh
cmp eax, 0x4c48337
pop ebx
push esi
or esi, 0x141d5
pop esi
push eax
sub eax, 0x10dd3
add eax, 0x83c7
xor eax, 0xe72b
pop eax
lea edx, [ebp - 0x1774]
mov dword [ebp - 0xca0], edx
mov eax, dword [ebp - 0x508]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc9c], ecx
xor edx, edx
mov word [ebp - 0x214], dx
xor eax, eax
mov word [ebp - 0x110], ax
push eax
push edi
add esp, 4
sub eax, 0x3e78
pop eax
push ecx
add ecx, 0x138b4
pop ecx
push edx
push ebx
add esp, 4
xor edx, 0x881c
add edx, 0x8a29
add edx, 0xfb2d
add edx, 0x8034
pop edx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x197c], eax
mov ecx, dword [ebp - 0x197c]
lea eax, [esi + 0x518bffff]
xor byte [ecx - 0x197f6b], cl
dec dword [ebx - 0x197f7b]
dec dword [ecx - 0x15fb7b]
call dword [esi + 0x57]
add esp, 4
call 0x40cc2b
add byte [eax + 0x48], cl
inc esi
push eax
xor eax, 0xe804c483
or dword [eax], eax
add byte [eax], al
add byte [ecx + 0x34], al
cmp byte [0x3d434147], bh
add esp, 4
and esi, 0xd0a
jmp 0x40cc4b
pop esi
cmp dword [ebp - 0x15fc], 0
jne 0x40cc64
mov dword [ebp - 0x31c], 0
jmp 0x40cf0b
cmpsd dword [esi], dword es:[edi]
add al, byte [eax]
invalid
mov ecx, dword [ebp - 0x15fc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcb4], eax
push edx
push edx
add esp, 4
and edx, 0x9fa7
pop edx
push ecx
or ecx, 0x10d11
sub ecx, 0x1557b
add ecx, 0xf311
pop ecx
push edx
push eax
add esp, 4
and edx, 0x14214
sub edx, 0xe836
pop edx
cmp dword [ebp - 0xcb4], 0
jne 0x40ccc0
mov dword [ebp - 0x31c], 0
jmp 0x40cf0b
mov ecx, dword [ebp - 0xcb4]
mov dword [ebp - 0x50c], ecx
push edx
xor edx, 0x17b6a
add edx, 0x9ef1
pop edx
push eax
xor eax, 0xadd5
add eax, 0x13365
pop eax
push esi
sub esi, 0x11c06
pop esi
push ebx
or ebx, 0x417b
sub ebx, 0x6f75
pop ebx
lea edx, [ebp - 0x1738]
mov dword [ebp - 0xcb0], edx
mov eax, dword [ebp - 0x50c]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcac], ecx
xor edx, edx
mov word [ebp - 0x218], dx
xor eax, eax
mov word [ebp - 0x34], ax
push ebx
or ebx, 0x1556f
jmp 0x40cd34
or ebx, 0xd3c1
and ebx, 0xe57
pop ebx
push eax
call 0x40cd50
add byte [edi + 0x3b], al
xor al, 0x39
inc ebp
inc edx
dec ecx
inc edi
add esp, 4
xor eax, 0x9642
pop eax
mov ecx, dword [ebp - 0xcac]
mov dx, word [ecx]
mov word [ebp - 0x103a], dx
mov eax, dword [ebp - 0xcac]
add eax, 2
mov dword [ebp - 0xcac], eax
mov cx, word [ebp - 0x103a]
mov word [ebp - 0x218], cx
mov edx, dword [ebp - 0xcb0]
mov ax, word [edx]
mov word [ebp - 0x103c], ax
mov ecx, dword [ebp - 0xcb0]
add ecx, 2
mov dword [ebp - 0xcb0], ecx
mov dx, word [ebp - 0x103c]
mov word [ebp - 0x34], dx
push esi
push edi
add esp, 4
call 0x40cdc2
add byte [ecx], bh
cmp dword [edi], esi
cmp al, 0x43
add esp, 4
jmp 0x40cdca
pop esi
push edi
push ebx
add esp, 4
or edi, 0x158c3
or edi, 0x3368
add edi, 0x11619
pop edi
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x40ce00
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x1604], ecx
jmp 0x40ce5a
movzx eax, word [ebp - 0x218]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x40cd28
movzx edx, word [ebp - 0x218]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x40cd28
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x40ce44
mov dword [ebp - 0x1600], 0xffffffff
jmp 0x40ce4e
mov dword [ebp - 0x1600], 1
mov eax, dword [ebp - 0x1600]
mov dword [ebp - 0x1604], eax
cmp dword [ebp - 0x1604], 0
jne 0x40cea3
push edi
push edx
add esp, 4
jmp 0x40ce6d
or edi, 0xfa79
jmp 0x40ce7c
and edi, 0xf1b1
pop edi
push esi
push eax
add esp, 4
add esi, 0x177cd
add esi, 0x15a6a
pop esi
mov ecx, dword [ebp - 0x50c]
mov dword [ebp - 0x31c], ecx
jmp 0x40cf0b
push eax
push esi
add esp, 4
and eax, 0xc026
or eax, 0x3f4a
sub eax, 0x12fdf
and eax, 0x38f1
pop eax
push esi
push ecx
add esp, 4
add esi, 0x4c46
jmp 0x40ced4
pop esi
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx]
mov dword [ebp - 0x50c], eax
mov ecx, dword [ebp - 0x50c]
cmp ecx, dword [ebp - 0xcb4]
je 0x40cf01
mov edx, dword [ebp - 0x50c]
cmp dword [edx + 0x30], 0
jne 0x40cccc
mov dword [ebp - 0x31c], 0
push esi
push edi
add esp, 4
xor esi, 0x13559
pop esi
push ecx
push ebx
add esp, 4
add ecx, 0xee34
pop ecx
push ebx
xor ebx, 0xd6d7
and ebx, 0x15665
or ebx, 0xf40a
and ebx, 0x9e9f
pop ebx
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x324], ecx
push edi
push edx
add esp, 4
add edi, 0xb258
jmp 0x40cf5f
sub edi, 0x18082
add edi, 0x11529
pop edi
push edi
push eax
add esp, 4
and edi, 0x5f95
or edi, 0x45f4
pop edi
mov dword [ebp - 0x770], 0
mov edx, dword [ebp - 0x324]
mov dword [ebp - 0x1608], edx
cmp dword [ebp - 0x1608], 0
jne 0x40cfae
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x40d29f
mov ecx, dword [ebp - 0x1608]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x160c], edx
jne 0x40cfd6
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x40d29f
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x160c]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1610], ecx
cmp dword [ebp - 0x1610], 0
jne 0x40d008
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
jmp 0x40d29f
mov eax, dword [ebp - 0x324]
add eax, dword [ebp - 0x1610]
mov dword [ebp - 0x764], eax
jne 0x40d02d
mov ecx, dword [ebp - 0x770]
mov dword [ebp - 0x510], ecx
jmp 0x40d29f
mov edx, dword [ebp - 0x764]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1984], eax
mov ecx, dword [ebp - 0x764]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x1988], edx
mov eax, dword [ebp - 0x764]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x1d10], ecx
mov dword [ebp - 0x768], 0
jmp 0x40d087
mov edx, dword [ebp - 0x768]
add edx, 1
mov dword [ebp - 0x768], edx
mov eax, dword [ebp - 0x764]
mov ecx, dword [ebp - 0x768]
cmp ecx, dword [eax + 0x18]
jae 0x40d293
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x1984]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x76c], ecx
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x1988]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1d10]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x198c], eax
mov dword [ebp - 0x19c], 0
jmp 0x40d0f7
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
test eax, eax
je 0x40d1a9
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x878]
test edx, edx
je 0x40d1a9
push eax
push ebx
add esp, 4
or eax, 0xdcb3
call 0x40d13b
add byte [edi], dh
cmp eax, 0x833f404e
les eax, [ecx + eax*4]
invalid
push edi
push eax
add esp, 4
add edi, 0x15c4a
pop edi
push esi
push esi
add esp, 4
xor esi, 0x5741
pop esi
push edx
push ecx
add esp, 4
and edx, 0x14cfe
sub edx, 0x16a04
jmp 0x40d1da
pop edx
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x878]
cmp eax, edx
jne 0x40d208
mov dword [ebp - 0xcb8], 0
jmp 0x40d277
push edi
add edi, 0x5579
sub edi, 0x9dfc
pop edi
push esi
and esi, 0xc5ce
add esi, 0x3519
pop esi
push eax
xor eax, 0x11b54
and eax, 0x8564
pop eax
push ecx
xor ecx, 0x5294
pop ecx
mov eax, dword [ebp - 0x76c]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x878]
or eax, 0x20
cmp ecx, eax
jge 0x40d26d
mov dword [ebp - 0xcb8], 0xffffffff
jmp 0x40d277
mov dword [ebp - 0xcb8], 1
cmp dword [ebp - 0xcb8], 0
jne 0x40d28e
mov ecx, dword [ebp - 0x198c]
mov dword [ebp - 0x510], ecx
jmp 0x40d29f
jmp 0x40d078
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
mov eax, dword [ebp - 0x510]
mov dword [ebp - 0x79c], eax
push edi
push esi
add esp, 4
add edi, 0x13474
add edi, 0x490f
or edi, 0x88d6
pop edi
push edi
or edi, 0x179c1
xor edi, 0x17190
and edi, 0xb748
and edi, 0xc94
pop edi
mov ecx, dword [ebp - 0x3e8]
add ecx, 0xe
mov dword [ebp - 0x19dc], ecx
push ebx
push eax
add esp, 4
sub ebx, 0x4cd5
and ebx, 0x59ca
pop ebx
push edx
push edi
add esp, 4
and edx, 0xa639
jmp 0x40d311
and edx, 0x5bac
add edx, 0xe406
pop edx
cmp dword [ebp - 0x3e8], 0
je 0x40d330
cmp dword [ebp - 0xab8], 0
jne 0x40d376
push esi
sub esi, 0x104fc
xor esi, 0x122e5
and esi, 0xd0e8
or esi, 0x4c6c
pop esi
push edx
push eax
add esp, 4
xor edx, 0x59df
xor edx, 0x8a5c
sub edx, 0x13eed
pop edx
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x1990], edx
push 0
call dword [ebp - 0x1990]
mov dword [ebp - 0x20a8], 0xa
push esi
push edi
add esp, 4
or esi, 0x17bf7
pop esi
push ebx
push ebx
add esp, 4
and ebx, 0x4602
pop ebx
push esi
and esi, 0x11a3f
and esi, 0x1077f
sub esi, 0xd841
jmp 0x40d3b1
pop esi
mov eax, dword [ebp - 0x3e8]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ae], cl
mov edx, dword [ebp - 0xab8]
sub edx, dword [ebp - 0x3e8]
mov dword [ebp - 0x1694], edx
mov dword [ebp - 0xce8], 0
push eax
push edx
add esp, 4
or eax, 0xb613
add eax, 0xdebc
add eax, 0x916f
pop eax
push edi
xor edi, 0xfdfc
xor edi, 0x85b0
or edi, 0x13c7f
sub edi, 0x149c0
pop edi
mov byte [ebp - 0x9d4], 0x56
mov byte [ebp - 0x9d3], 0x69
mov byte [ebp - 0x9d2], 0x72
mov byte [ebp - 0x9d1], 0x74
mov byte [ebp - 0x9d0], 0x75
mov byte [ebp - 0x9cf], 0x61
mov byte [ebp - 0x9ce], 0x6c
mov byte [ebp - 0x9cd], 0x50
mov byte [ebp - 0x9cc], 0x72
mov byte [ebp - 0x9cb], 0x6f
mov byte [ebp - 0x9ca], 0x74
mov byte [ebp - 0x9c9], 0x65
mov byte [ebp - 0x9c8], 0x63
mov byte [ebp - 0x9c7], 0x74
mov byte [ebp - 0x9c6], 0
push edx
push esi
add esp, 4
or edx, 0x8971
sub edx, 0xf2b3
or edx, 0x279a
and edx, 0xe430
pop edx
push eax
and eax, 0xb638
sub eax, 0x9302
or eax, 0xd3ee
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1994], eax
mov ecx, dword [ebp - 0x1994]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1998], edx
mov eax, dword [ebp - 0x1998]
mov dword [ebp - 0x1614], eax
push edi
push esi
add esp, 4
call 0x40d4e3
add byte [edx + 0x3c], al
inc esi
inc ecx
inc ebx
inc esp
add esp, 4
and edi, 0x1106b
call 0x40d4f9
add byte [ebx + 0x4f], cl
cmp dword [ebp + 0x48], ecx
inc ebx
cmp eax, dword [ebx - 0x307efb3c]
aaa
sub al, byte [eax]
add byte [edi - 0x7d], bl
mov ebp, 0xffffe9ec
add byte [ebp + 0xf], dh
mov dword [ebp - 0x2fc], 0
jmp 0x40d7c2
push edi
push edx
add esp, 4
and edi, 0x145b3
and edi, 0x2a28
sub edi, 0x976f
sub edi, 0x291
pop edi
push ebx
call 0x40d7f0
add byte [ebx], bh
inc ebp
push eax
inc esp
dec ecx
aas
dec esi
xor edi, dword [0x5b04c483]
cmp dword [ebp - 0x2fc], 0
jne 0x40e0f9
mov eax, 0x6b
mov word [ebp - 0x1790], ax
mov ecx, 0x65
mov word [ebp - 0x178e], cx
mov edx, 0x72
mov word [ebp - 0x178c], dx
mov eax, 0x6e
mov word [ebp - 0x178a], ax
mov ecx, 0x65
mov word [ebp - 0x1788], cx
mov edx, 0x6c
mov word [ebp - 0x1786], dx
mov eax, 0x33
mov word [ebp - 0x1784], ax
mov ecx, 0x32
mov word [ebp - 0x1782], cx
mov edx, 0x2e
mov word [ebp - 0x1780], dx
mov eax, 0x64
mov word [ebp - 0x177e], ax
mov ecx, 0x6c
mov word [ebp - 0x177c], cx
mov edx, 0x6c
mov word [ebp - 0x177a], dx
xor eax, eax
mov word [ebp - 0x1778], ax
push esi
xor esi, 0x559c
xor esi, 0x163d2
or esi, 0x5c08
xor esi, 0x13b92
pop esi
push edx
push edi
add esp, 4
add edx, 0x15ede
sub edx, 0xa81e
sub edx, 0x1629d
pop edx
mov byte [ebp - 0x8a4], 0x4c
mov byte [ebp - 0x8a3], 0x6f
mov byte [ebp - 0x8a2], 0x61
mov byte [ebp - 0x8a1], 0x64
mov byte [ebp - 0x8a0], 0x4c
mov byte [ebp - 0x89f], 0x69
mov byte [ebp - 0x89e], 0x62
mov byte [ebp - 0x89d], 0x72
mov byte [ebp - 0x89c], 0x61
mov byte [ebp - 0x89b], 0x72
mov byte [ebp - 0x89a], 0x79
mov byte [ebp - 0x899], 0x57
mov byte [ebp - 0x898], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x199c], ecx
mov edx, dword [ebp - 0x199c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19a0], eax
mov ecx, dword [ebp - 0x19a0]
mov dword [ebp - 0x1620], ecx
push edi
and edi, 0x15ad1
call 0x40d964
add byte [ecx + 0x4c], al
aaa
cmp bh, byte [edx]
xor cl, byte [ecx + 0x4b]
add esp, 4
sub edi, 0xb612
call 0x40d97d
add byte [eax + edi + 0x32], cl
cmp edi, dword [esi + esi]
inc ebp
cmp dword [edx], edi
cmp eax, 0x5f04c483
cmp dword [ebp - 0x1620], 0
jne 0x40d999
mov dword [ebp - 0x774], 0
jmp 0x40dc40
mov edx, dword [ebp - 0x1620]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd0], ecx
push edx
push ebx
add esp, 4
xor edx, 0xc248
and edx, 0x12347
pop edx
push edx
push ecx
add esp, 4
jmp 0x40d9cb
jmp 0x40d9d4
pop edx
push ecx
add ecx, 0x17f3d
pop ecx
cmp dword [ebp - 0xcd0], 0
jne 0x40d9f5
mov dword [ebp - 0x774], 0
jmp 0x40dc40
mov edx, dword [ebp - 0xcd0]
mov dword [ebp - 0x518], edx
push ebx
call 0x40da10
add byte [edx + 0x43], cl
cmp eax, dword [edi + 0x4a]
dec ecx
xor eax, dword [ebp - 0x7d]
les eax, [ebx + ebp*8]
add eax, 0x413e4c36
dec edi
pop ebx
push edx
push ecx
add esp, 4
add edx, 0x10be1
xor edx, 0x17a66
and edx, 0x4f60
pop edx
lea eax, [ebp - 0x1790]
mov dword [ebp - 0xccc], eax
mov ecx, dword [ebp - 0x518]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcc8], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push edx
push edi
add esp, 4
sub edx, 0x16581
xor edx, 0x3334
and edx, 0xbf27
add edx, 0xa046
pop edx
push ebx
and ebx, 0x4381
and ebx, 0x4b40
add ebx, 0x2dde
pop ebx
mov edx, dword [ebp - 0xcc8]
mov ax, word [edx]
mov word [ebp - 0x1042], ax
mov ecx, dword [ebp - 0xcc8]
add ecx, 2
mov dword [ebp - 0xcc8], ecx
mov dx, word [ebp - 0x1042]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xccc]
mov cx, word [eax]
mov word [ebp - 0x1044], cx
mov edx, dword [ebp - 0xccc]
add edx, 2
mov dword [ebp - 0xccc], edx
mov ax, word [ebp - 0x1044]
mov word [ebp - 0x3c], ax
push edx
push ebx
add esp, 4
and edx, 0x4454
and edx, 0x4af8
and edx, 0xd55a
pop edx
push ecx
push eax
add esp, 4
jmp 0x40db0b
add ecx, 0xa73b
sub ecx, 0x9720
pop ecx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x40db35
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1668], edx
jmp 0x40db8f
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x40da5d
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x40da5d
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x40db79
mov dword [ebp - 0x1624], 0xffffffff
jmp 0x40db83
mov dword [ebp - 0x1624], 1
mov ecx, dword [ebp - 0x1624]
mov dword [ebp - 0x1668], ecx
cmp dword [ebp - 0x1668], 0
jne 0x40dbd8
push edi
push ecx
add esp, 4
jmp 0x40dba5
pop edi
push eax
jmp 0x40dbaf
sub eax, 0x4f65
pop eax
push edx
and edx, 0x5fc
pop edx
push eax
push edi
add esp, 4
sub eax, 0x8fec
pop eax
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x774], edx
jmp 0x40dc40
push ecx
push edi
add esp, 4
xor ecx, 0x454
call 0x40dbf0
add byte [edi + 0x4f], al
dec edx
xor dh, byte [edi]
cmp eax, 0x4c48332
pop ecx
push eax
xor eax, 0x1334a
add eax, 0x1979
pop eax
push ebx
and ebx, 0x8039
pop ebx
mov eax, dword [ebp - 0x518]
mov ecx, dword [eax]
mov dword [ebp - 0x518], ecx
mov edx, dword [ebp - 0x518]
cmp edx, dword [ebp - 0xcd0]
je 0x40dc36
mov eax, dword [ebp - 0x518]
cmp dword [eax + 0x30], 0
jne 0x40da01
mov dword [ebp - 0x774], 0
push edx
push ebx
add esp, 4
call 0x40dc51
add byte [eax + ecx*2 + 0x43], cl
cmp eax, 0xc4833c36
add al, 0x5a
push esi
push ecx
add esp, 4
or esi, 0x256e
jmp 0x40dc65
pop esi
push esi
push esi
add esp, 4
xor esi, 0xf687
pop esi
cmp dword [ebp - 0x774], 0
jne 0x40dcbc
push ebx
push esi
add esp, 4
xor ebx, 0x16163
or ebx, 0x12002
pop ebx
push edi
push edi
add esp, 4
sub edi, 0x2c20
pop edi
push ebx
or ebx, 0xeac6
xor ebx, 0xb36a
xor ebx, 0xc13e
pop ebx
mov dword [ebp - 0xab4], 0
jmp 0x40e7e4
push edx
push esi
add esp, 4
and edx, 0x1312c
and edx, 0x1592a
add edx, 0x397c
pop edx
push eax
xor eax, 0x1035
or eax, 0x163df
sub eax, 0xc49f
and eax, 0xaf7e
pop eax
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x784], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x166c], eax
cmp dword [ebp - 0x166c], 0
jne 0x40dd2d
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x40e01e
mov edx, dword [ebp - 0x166c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1670], eax
jne 0x40dd55
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x40e01e
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1670]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1678], edx
cmp dword [ebp - 0x1678], 0
jne 0x40dd87
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
jmp 0x40e01e
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1678]
mov dword [ebp - 0x778], ecx
jne 0x40ddac
mov edx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], edx
jmp 0x40e01e
mov eax, dword [ebp - 0x778]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19a4], ecx
mov edx, dword [ebp - 0x778]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19a8], eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19ac], edx
mov dword [ebp - 0x77c], 0
jmp 0x40de06
mov eax, dword [ebp - 0x77c]
add eax, 1
mov dword [ebp - 0x77c], eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x77c]
cmp edx, dword [ecx + 0x18]
jae 0x40e012
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19a4]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x780], edx
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19a8]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19ac]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19b0], ecx
mov dword [ebp - 0x1a0], 0
jmp 0x40de76
mov edx, dword [ebp - 0x1a0]
add edx, 1
mov dword [ebp - 0x1a0], edx
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
test ecx, ecx
je 0x40df28
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x8a4]
test eax, eax
je 0x40df28
push edx
push esi
add esp, 4
jmp 0x40deb1
pop edx
push edi
xor edi, 0x14d17
jmp 0x40debe
jmp 0x40dec3
jmp 0x40dec8
pop edi
push eax
push edx
add esp, 4
add eax, 0x1d0e
pop eax
mov ecx, dword [ebp - 0x780]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x8a4]
cmp edx, ecx
je 0x40df1a
mov edx, dword [ebp - 0x780]
add edx, dword [ebp - 0x1a0]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a0]
movsx edx, byte [ebp + ecx - 0x8a4]
cmp eax, edx
jne 0x40df21
jmp 0x40de67
jmp 0x40df28
push edi
or edi, 0x181fe
xor edi, 0xf503
xor edi, 0x12cf1
pop edi
push edx
push edi
add esp, 4
or edx, 0x10342
xor edx, 0x1220f
or edx, 0x9a57
add edx, 0x63ac
pop edx
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x8a4]
cmp ecx, eax
jne 0x40df87
mov dword [ebp - 0xcd4], 0
jmp 0x40dff6
push ecx
or ecx, 0x109fb
jmp 0x40df95
sub ecx, 0x95f8
pop ecx
push edx
xor edx, 0x8b06
pop edx
push ecx
push eax
add esp, 4
sub ecx, 0x1e2c
jmp 0x40dfb8
pop ecx
mov ecx, dword [ebp - 0x780]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x8a4]
or ecx, 0x20
cmp edx, ecx
jge 0x40dfec
mov dword [ebp - 0xcd4], 0xffffffff
jmp 0x40dff6
mov dword [ebp - 0xcd4], 1
cmp dword [ebp - 0xcd4], 0
jne 0x40e00d
mov edx, dword [ebp - 0x19b0]
mov dword [ebp - 0x3f8], edx
jmp 0x40e01e
jmp 0x40ddf7
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0