Function at 0x103aa430
Capabilities:
Encrypt data using chaskey

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x404
mov eax, dword [0x11ad127c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x10462360]
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebp + 0xc]
push 0
mov dword [ebp - 0xc], eax
mov ax, word [0x10462364]
push 0
push ebx
mov dword [ebp - 0x400], ecx
mov dword [ebp - 0x404], ebx
mov word [ebp - 8], ax
mov dword [ebp - 0x3fc], 0xffffffff
call fcn.1043fff8
push ebx
lea eax, [ebp - 0x3f4]
push 0x3e7
push eax
call fcn.1043d9cd
add esp, 0x18
test eax, eax
je 0x103abc1a
nop dword [eax + eax]
lea eax, [ebp - 0xc]
mov esi, edi
push eax
lea eax, [ebp - 0x3f4]
push eax
call fcn.10441558
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x103abbf8
cmp byte [ebx], 0x23
je 0x103abbf8
lea eax, [ebp - 0xc]
push eax
push 0
call fcn.10441558
lea ecx, [ebp - 0x3f8]
push ecx
push 0x10462370
push eax
call fcn.1003a0d0
add esp, 0x14
cmp eax, 1
jne 0x103abc2f
mov ecx, ebx
mov eax, 0x10463900
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa518
test dl, dl
je 0x103aa514
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa518
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa4f8
xor eax, eax
jmp 0x103aa51d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa55f
mov ecx, dword [ebp - 0x3f8]
cmp ecx, 0x40
jl 0x103aa53b
mov eax, dword [ebp - 0x3fc]
inc eax
cmp ecx, eax
jne 0x103abc2f
mov eax, ecx
lea edi, [esi + 0x80]
mov ecx, dword [ebp - 0x400]
mov dword [ebp - 0x3fc], eax
inc dword [ecx + 0x230e0]
test eax, eax
cmovle edi, esi
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463910
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa586
test dl, dl
je 0x103aa582
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa586
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa566
xor eax, eax
jmp 0x103aa58b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa59e
mov ax, word [ebp - 0x3f8]
mov word [edi], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463930
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa5c5
test dl, dl
je 0x103aa5c1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa5c5
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa5a5
xor eax, eax
jmp 0x103aa5ca
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa5de
mov ax, word [ebp - 0x3f8]
mov word [edi + 2], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463950
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa605
test dl, dl
je 0x103aa601
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa605
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa5e5
xor eax, eax
jmp 0x103aa60a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa61c
mov eax, dword [ebp - 0x3f8]
mov dword [edi + 4], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463970
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa643
test dl, dl
je 0x103aa63f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa643
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa623
xor eax, eax
jmp 0x103aa648
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa65a
mov eax, dword [ebp - 0x3f8]
mov dword [edi + 8], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463990
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa681
test dl, dl
je 0x103aa67d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa681
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa661
xor eax, eax
jmp 0x103aa686
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa698
mov eax, dword [ebp - 0x3f8]
mov dword [edi + 0xc], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x104639c0
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa6c0
test dl, dl
je 0x103aa6bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa6c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa6a0
xor eax, eax
jmp 0x103aa6c5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa6d7
mov eax, dword [ebp - 0x3f8]
mov dword [edi + 0x10], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x104639f0
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa700
test dl, dl
je 0x103aa6fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa700
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa6e0
xor eax, eax
jmp 0x103aa705
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa717
mov eax, dword [ebp - 0x3f8]
mov dword [edi + 0x14], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463a20
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa740
test dl, dl
je 0x103aa73c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa740
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa720
xor eax, eax
jmp 0x103aa745
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa75f
mov eax, dword [edi + 0x18]
xor eax, dword [ebp - 0x3f8]
and eax, 0x3fffffff
xor dword [edi + 0x18], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463a50
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa786
test dl, dl
je 0x103aa782
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa786
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa766
xor eax, eax
jmp 0x103aa78b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa7a3
mov eax, dword [edi + 0x1c]
xor eax, dword [ebp - 0x3f8]
and eax, 1
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463a70
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa7d0
test dl, dl
je 0x103aa7cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa7d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa7b0
xor eax, eax
jmp 0x103aa7d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa7ef
mov eax, dword [ebp - 0x3f8]
add eax, eax
xor eax, dword [edi + 0x1c]
and eax, 2
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463a90
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa816
test dl, dl
je 0x103aa812
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa816
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa7f6
xor eax, eax
jmp 0x103aa81b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa836
mov eax, dword [ebp - 0x3f8]
shl eax, 2
xor eax, dword [edi + 0x1c]
and eax, 4
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463ab0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa860
test dl, dl
je 0x103aa85c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa860
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa840
xor eax, eax
jmp 0x103aa865
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa880
mov eax, dword [ebp - 0x3f8]
shl eax, 3
xor eax, dword [edi + 0x1c]
and eax, 8
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463ad0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa8a7
test dl, dl
je 0x103aa8a3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa8a7
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa887
xor eax, eax
jmp 0x103aa8ac
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa8c7
mov eax, dword [ebp - 0x3f8]
shl eax, 4
xor eax, dword [edi + 0x1c]
and eax, 0x10
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463af0
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa8f0
test dl, dl
je 0x103aa8ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa8f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa8d0
xor eax, eax
jmp 0x103aa8f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa910
mov eax, dword [ebp - 0x3f8]
shl eax, 5
xor eax, dword [edi + 0x1c]
and eax, 0x20
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463b10
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa937
test dl, dl
je 0x103aa933
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa937
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa917
xor eax, eax
jmp 0x103aa93c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa957
mov eax, dword [ebp - 0x3f8]
shl eax, 6
xor eax, dword [edi + 0x1c]
and eax, 0x40
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463b30
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa980
test dl, dl
je 0x103aa97c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa980
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa960
xor eax, eax
jmp 0x103aa985
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa9a2
mov eax, dword [ebp - 0x3f8]
shl eax, 7
xor eax, dword [edi + 0x1c]
and eax, 0x80
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463b50
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aa9d0
test dl, dl
je 0x103aa9cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aa9d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aa9b0
xor eax, eax
jmp 0x103aa9d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aa9f2
mov eax, dword [ebp - 0x3f8]
shl eax, 8
xor eax, dword [edi + 0x1c]
and eax, 0x100
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463b70
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aaa20
test dl, dl
je 0x103aaa1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aaa20
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aaa00
xor eax, eax
jmp 0x103aaa25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aaa42
mov eax, dword [ebp - 0x3f8]
shl eax, 9
xor eax, dword [edi + 0x1c]
and eax, 0x200
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463b90
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aaa70
test dl, dl
je 0x103aaa6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aaa70
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aaa50
xor eax, eax
jmp 0x103aaa75
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aaa92
mov eax, dword [ebp - 0x3f8]
shl eax, 0xa
xor eax, dword [edi + 0x1c]
and eax, 0x400
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463bb0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aaac0
test dl, dl
je 0x103aaabc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aaac0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aaaa0
xor eax, eax
jmp 0x103aaac5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aaae2
mov eax, dword [ebp - 0x3f8]
shl eax, 0xb
xor eax, dword [edi + 0x1c]
and eax, 0x800
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463bd0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aab10
test dl, dl
je 0x103aab0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aab10
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aaaf0
xor eax, eax
jmp 0x103aab15
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aab32
mov eax, dword [ebp - 0x3f8]
shl eax, 0xc
xor eax, dword [edi + 0x1c]
and eax, 0x1000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463bf0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aab60
test dl, dl
je 0x103aab5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aab60
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aab40
xor eax, eax
jmp 0x103aab65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aab82
mov eax, dword [ebp - 0x3f8]
shl eax, 0xd
xor eax, dword [edi + 0x1c]
and eax, 0x2000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463c10
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aabb0
test dl, dl
je 0x103aabac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aabb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aab90
xor eax, eax
jmp 0x103aabb5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aabd2
mov eax, dword [ebp - 0x3f8]
shl eax, 0xe
xor eax, dword [edi + 0x1c]
and eax, 0x4000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463c30
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aac00
test dl, dl
je 0x103aabfc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aac00
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aabe0
xor eax, eax
jmp 0x103aac05
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aac22
mov eax, dword [ebp - 0x3f8]
shl eax, 0xf
xor eax, dword [edi + 0x1c]
and eax, 0x8000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463c50
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aac50
test dl, dl
je 0x103aac4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aac50
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aac30
xor eax, eax
jmp 0x103aac55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aac72
mov eax, dword [ebp - 0x3f8]
shl eax, 0x10
xor eax, dword [edi + 0x1c]
and eax, 0x10000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463c70
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aaca0
test dl, dl
je 0x103aac9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aaca0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aac80
xor eax, eax
jmp 0x103aaca5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aacc2
mov eax, dword [ebp - 0x3f8]
shl eax, 0x11
xor eax, dword [edi + 0x1c]
and eax, 0x20000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463c90
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aacf0
test dl, dl
je 0x103aacec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aacf0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aacd0
xor eax, eax
jmp 0x103aacf5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aad12
mov eax, dword [ebp - 0x3f8]
shl eax, 0x12
xor eax, dword [edi + 0x1c]
and eax, 0x40000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463cb0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aad40
test dl, dl
je 0x103aad3c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aad40
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aad20
xor eax, eax
jmp 0x103aad45
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aad62
mov eax, dword [ebp - 0x3f8]
shl eax, 0x13
xor eax, dword [edi + 0x1c]
and eax, 0x80000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463cd0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aad90
test dl, dl
je 0x103aad8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aad90
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aad70
xor eax, eax
jmp 0x103aad95
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aadb2
mov eax, dword [ebp - 0x3f8]
shl eax, 0x14
xor eax, dword [edi + 0x1c]
and eax, 0x100000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463cf0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aade0
test dl, dl
je 0x103aaddc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aade0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aadc0
xor eax, eax
jmp 0x103aade5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aae02
mov eax, dword [ebp - 0x3f8]
shl eax, 0x15
xor eax, dword [edi + 0x1c]
and eax, 0x200000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463d10
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aae30
test dl, dl
je 0x103aae2c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aae30
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aae10
xor eax, eax
jmp 0x103aae35
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aae52
mov eax, dword [ebp - 0x3f8]
shl eax, 0x16
xor eax, dword [edi + 0x1c]
and eax, 0x400000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463d30
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aae80
test dl, dl
je 0x103aae7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aae80
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aae60
xor eax, eax
jmp 0x103aae85
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aaea2
mov eax, dword [ebp - 0x3f8]
shl eax, 0x17
xor eax, dword [edi + 0x1c]
and eax, 0x800000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463d50
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aaed0
test dl, dl
je 0x103aaecc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aaed0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aaeb0
xor eax, eax
jmp 0x103aaed5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aaef2
mov eax, dword [ebp - 0x3f8]
shl eax, 0x18
xor eax, dword [edi + 0x1c]
and eax, 0x1000000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463d70
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aaf20
test dl, dl
je 0x103aaf1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aaf20
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aaf00
xor eax, eax
jmp 0x103aaf25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aaf42
mov eax, dword [ebp - 0x3f8]
shl eax, 0x19
xor eax, dword [edi + 0x1c]
and eax, 0x2000000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463d90
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aaf70
test dl, dl
je 0x103aaf6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aaf70
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aaf50
xor eax, eax
jmp 0x103aaf75
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aaf92
mov eax, dword [ebp - 0x3f8]
shl eax, 0x1a
xor eax, dword [edi + 0x1c]
and eax, 0x4000000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463db0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103aafc0
test dl, dl
je 0x103aafbc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103aafc0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aafa0
xor eax, eax
jmp 0x103aafc5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103aafe2
mov eax, dword [ebp - 0x3f8]
shl eax, 0x1b
xor eax, dword [edi + 0x1c]
and eax, 0x8000000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463dd0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab010
test dl, dl
je 0x103ab00c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab010
add eax, 2
add ecx, 2
test dl, dl
jne 0x103aaff0
xor eax, eax
jmp 0x103ab015
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab032
mov eax, dword [ebp - 0x3f8]
shl eax, 0x1c
xor eax, dword [edi + 0x1c]
and eax, 0x10000000
xor dword [edi + 0x1c], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463df0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab060
test dl, dl
je 0x103ab05c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab060
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab040
xor eax, eax
jmp 0x103ab065
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab085
mov ecx, dword [edi + 0x1c]
mov eax, dword [ebp - 0x3f8]
and ecx, 0x1fffffff
shl eax, 0x1d
or ecx, eax
mov dword [edi + 0x1c], ecx
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463e10
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab0b0
test dl, dl
je 0x103ab0ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab0b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab090
xor eax, eax
jmp 0x103ab0b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab0cd
mov eax, dword [edi + 0x20]
xor eax, dword [ebp - 0x3f8]
and eax, 0x1f
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463e30
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab0f4
test dl, dl
je 0x103ab0f0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab0f4
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab0d4
xor eax, eax
jmp 0x103ab0f9
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab116
mov eax, dword [ebp - 0x3f8]
shl eax, 5
xor eax, dword [edi + 0x20]
and eax, 0x7e0
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463e50
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab140
test dl, dl
je 0x103ab13c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab140
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab120
xor eax, eax
jmp 0x103ab145
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab162
mov eax, dword [ebp - 0x3f8]
shl eax, 0xb
xor eax, dword [edi + 0x20]
and eax, 0x800
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463e70
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab190
test dl, dl
je 0x103ab18c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab190
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab170
xor eax, eax
jmp 0x103ab195
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab1b2
mov eax, dword [ebp - 0x3f8]
shl eax, 0xc
xor eax, dword [edi + 0x20]
and eax, 0x1000
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463e90
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab1e0
test dl, dl
je 0x103ab1dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab1e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab1c0
xor eax, eax
jmp 0x103ab1e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab202
mov eax, dword [ebp - 0x3f8]
shl eax, 0xd
xor eax, dword [edi + 0x20]
and eax, 0x2000
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463eb0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab230
test dl, dl
je 0x103ab22c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab230
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab210
xor eax, eax
jmp 0x103ab235
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab252
mov eax, dword [ebp - 0x3f8]
shl eax, 0xe
xor eax, dword [edi + 0x20]
and eax, 0x4000
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463ed0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab280
test dl, dl
je 0x103ab27c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab280
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab260
xor eax, eax
jmp 0x103ab285
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab2a2
mov eax, dword [ebp - 0x3f8]
shl eax, 0xf
xor eax, dword [edi + 0x20]
and eax, 0x8000
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463ef0
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab2d0
test dl, dl
je 0x103ab2cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab2d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab2b0
xor eax, eax
jmp 0x103ab2d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab2f2
mov eax, dword [ebp - 0x3f8]
shl eax, 0x11
xor eax, dword [edi + 0x20]
and eax, 0x20000
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f10
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab320
test dl, dl
je 0x103ab31c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab320
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab300
xor eax, eax
jmp 0x103ab325
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab342
mov eax, dword [ebp - 0x3f8]
shl eax, 0x10
xor eax, dword [edi + 0x20]
and eax, 0x10000
xor dword [edi + 0x20], eax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f20
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab370
test dl, dl
je 0x103ab36c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab370
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab350
xor eax, eax
jmp 0x103ab375
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab389
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x24], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f30
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab3b0
test dl, dl
je 0x103ab3ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab3b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab390
xor eax, eax
jmp 0x103ab3b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab3c9
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x26], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f40
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab3f0
test dl, dl
je 0x103ab3ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab3f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab3d0
xor eax, eax
jmp 0x103ab3f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab409
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x28], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f50
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab430
test dl, dl
je 0x103ab42c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab430
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab410
xor eax, eax
jmp 0x103ab435
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab449
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x2a], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f60
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab470
test dl, dl
je 0x103ab46c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab470
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab450
xor eax, eax
jmp 0x103ab475
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab489
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x2c], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f70
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab4b0
test dl, dl
je 0x103ab4ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab4b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab490
xor eax, eax
jmp 0x103ab4b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab4c9
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x2e], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f80
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab4f0
test dl, dl
je 0x103ab4ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab4f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab4d0
xor eax, eax
jmp 0x103ab4f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab509
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x30], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463f90
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab530
test dl, dl
je 0x103ab52c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab530
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab510
xor eax, eax
jmp 0x103ab535
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab549
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x32], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463fa0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab570
test dl, dl
je 0x103ab56c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab570
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab550
xor eax, eax
jmp 0x103ab575
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab589
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x34], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463fb0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab5b0
test dl, dl
je 0x103ab5ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab5b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab590
xor eax, eax
jmp 0x103ab5b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab5c9
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x36], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463fd0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab5f0
test dl, dl
je 0x103ab5ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab5f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab5d0
xor eax, eax
jmp 0x103ab5f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab609
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x38], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10463ff0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab630
test dl, dl
je 0x103ab62c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab630
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab610
xor eax, eax
jmp 0x103ab635
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab649
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x3a], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10464010
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab670
test dl, dl
je 0x103ab66c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab670
add eax, 2
add ecx, 2
test dl, dl
jne 0x103ab650
xor eax, eax
jmp 0x103ab675
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab689
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x3c], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10464020
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab6b0
test dl, dl
je 0x103ab6ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x103ab6b0
xor eax, eax
jmp 0x103ab6b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x103ab6c9
mov ax, word [ebp - 0x3f8]
mov word [edi + 0x3e], ax
jmp 0x103abbf8
mov ecx, ebx
mov eax, 0x10464040
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x103ab6f0
push dword [ebp - 0x404]
lea eax, [ebp - 0x3f4]
push 0x3e7
push eax
call fcn.1043d9cd
add esp, 0xc
test eax, eax
jne 0x103aa4a0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1045066c
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [ebp - 4]
mov eax, 8
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1045066c
mov esp, ebp
pop ebp
ret 8