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

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0x78
push 0xffffffffffffffff
push 0x49c7a5
mov eax, dword fs:[0]
push eax
sub esp, 0x7c
mov eax, dword [0x4c7080]
xor eax, ebp
mov dword [ebp + 0x74], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x84], ebx
mov byte [ebp - 4], 0x13
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp + 4], ecx
lea ecx, [edx + esi]
mov dword [ebp + 0xc], ecx
cmp ecx, esi
je 0x45a489
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45a489
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
sub ecx, 4
mov dword [ebp + 4], 0xd3ad0f8d
mov dword [ebp + 8], ecx
dec edi
mov edx, dword [ecx]
add edx, esi
mov cl, byte [edx]
inc edx
mov byte [ebp + 0x13], cl
test cl, cl
mov ecx, dword [ebp + 8]
je 0x45a481
mov cl, byte [ebp + 0x13]
movsx ecx, cl
xor ecx, dword [ebp + 4]
imul ecx, ecx, 0x1000193
mov dword [ebp + 4], ecx
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x459246
cmp dword [ebp + 4], 0x79c75a53
jne 0x45a47e
mov eax, dword [ebp + 0xc]
push ebx
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, esi
add eax, esi
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, esi
call eax
movaps xmm0, xmmword [0x4b6e40]
lea ecx, [ebp + 0x14]
movups xmmword [ebp + 0x14], xmm0
mov dword [ebp + 0x34], 0x63353241
movaps xmm0, xmmword [0x4b66c0]
movups xmmword [ebp + 0x24], xmm0
mov dword [ebp + 0x38], 0x385a6e69
mov word [ebp + 0x3c], 0x100
call fcn.0045fa34
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp + 4], ecx
lea ecx, [edx + esi]
mov dword [ebp + 0xc], ecx
cmp ecx, esi
je 0x45a3a0
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x45a3a0
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edx*4]
add ecx, esi
sub ecx, 4
mov dword [ebp + 4], 0x32b3513a
mov dword [ebp + 8], ecx
dec edx
mov edi, dword [ecx]
add edi, esi
mov cl, byte [edi]
inc edi
mov byte [ebp + 0x13], cl
test cl, cl
mov ecx, dword [ebp + 8]
je 0x45a398
mov cl, byte [ebp + 0x13]
movsx ecx, cl
xor ecx, dword [ebp + 4]
imul ecx, ecx, 0x1000193
mov dword [ebp + 4], ecx
mov cl, byte [edi]
inc edi
test cl, cl
jne 0x459318
cmp dword [ebp + 4], 0x9e017e6e
jne 0x45a395
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, esi
add eax, esi
movzx eax, word [eax + edx*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp + 0x14]
add eax, esi
push ecx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp + 4], ecx
lea ecx, [edx + esi]
mov dword [ebp + 0xc], ecx
cmp ecx, esi
je 0x45a38e
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45a38e
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
sub ecx, 4
mov dword [ebp + 4], 0x12766447
mov dword [ebp + 8], ecx
dec edi
mov edx, dword [ecx]
add edx, esi
mov cl, byte [edx]
inc edx
mov byte [ebp + 0x13], cl
test cl, cl
mov ecx, dword [ebp + 8]
je 0x45a386
mov cl, byte [ebp + 0x13]
movsx ecx, cl
xor ecx, dword [ebp + 4]
imul ecx, ecx, 0x1000193
mov dword [ebp + 4], ecx
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x4593bb
cmp dword [ebp + 4], 0x638b0cd1
jne 0x45a383
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, esi
add eax, esi
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, esi
call eax
test eax, eax
je 0x459ad2
mov cl, byte [ebp + 0x13]
lea edi, [ebp + 0x60]
mov dword [ebp + 0x5c], 0xb3b4b5a9
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
mov esi, dword [0x4cad28]
mov edi, dword [0x4cad2c]
mov edx, ebx
mov dword [ebp + 8], edx
cmp edx, 0x15
jae 0x459aca
mov bl, byte [ebp + edx + 0x5c]
movzx eax, bl
mov dword [ebp - 0x14], eax
mov dword [ebp + 4], eax
cmp esi, edx
ja 0x459abf
lea eax, [edi + 0x41]
cmp esi, eax
jae 0x45945f
lea ecx, [edx + 0x568fdc0f]
mov al, cl
and al, byte [ebp + 4]
add al, al
sub cl, al
sub cl, 0x69
add cl, byte [ebp + 4]
jmp 0x45947e
lea eax, [edi + 1]
cmp esi, eax
je 0x459a5a
inc eax
cmp esi, eax
je 0x459a1f
lea eax, [edi + 3]
cmp esi, eax
je 0x4599de
cmp edi, edx
ja 0x459ab4
lea eax, [edi + 0x200]
cmp esi, eax
jae 0x4594a7
lea ecx, [edx + 0x4de1be83]
mov al, cl
and al, byte [ebp + 4]
add al, al
sub cl, al
add cl, 0x6b
add cl, byte [ebp + 4]
jmp 0x4594c8
lea eax, [edi + 1]
cmp esi, eax
je 0x4599a9
lea eax, [edi + 3]
cmp esi, eax
je 0x459994
lea eax, [edi + 5]
cmp esi, eax
je 0x459981
lea eax, [edi + esi]
cmp eax, edx
jbe 0x4596ce
lea eax, [edi + 1]
cmp esi, eax
je 0x4596b3
lea eax, [edi + 0x2a]
cmp esi, eax
je 0x45969a
lea eax, [edi + 0x5a]
cmp esi, eax
je 0x459687
lea eax, [edi + 0x41]
cmp esi, eax
je 0x45966b
lea eax, [edi + 0x7a]
cmp esi, eax
je 0x459656
lea eax, [edi + 0x61]
cmp esi, eax
je 0x4594d3
lea esi, [edi + 9]
lea edi, [esi + 0x1000]
lea eax, [edi + 8]
cmp esi, eax
jb 0x459a9d
lea eax, [edi + 6]
cmp esi, eax
jb 0x459a85
lea eax, [edi + 5]
cmp esi, eax
jb 0x4595c8
lea eax, [edi + 4]
cmp esi, eax
jb 0x4595b3
lea eax, [edi + 3]
cmp esi, eax
jb 0x45959e
lea eax, [edi + 2]
cmp esi, eax
jb 0x4594d3
lea esi, [edi + 0x42]
lea edi, [esi + 1]
lea eax, [edi + 0x40]
cmp esi, eax
ja 0x459643
lea eax, [edi + 0x28]
cmp esi, eax
ja 0x459630
lea eax, [edi + 0x20]
cmp esi, eax
ja 0x459619
lea eax, [edi + 0x10]
cmp esi, eax
ja 0x4595fc
lea eax, [edi + 0xa]
cmp esi, eax
ja 0x4595e0
lea eax, [edi + 9]
cmp esi, eax
ja 0x4594d3
lea esi, [edi + 0x1000]
lea edi, [esi + 8]
jmp 0x4594d3
lea ecx, [edx - 0x37]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x7f
add cl, bl
jmp 0x4594c8
lea ecx, [edx + 0x57]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x61
add cl, bl
jmp 0x45947e
lea ecx, [edx - 0x1b]
mov al, cl
and al, bl
add al, al
sub cl, al
mov eax, dword [ebp - 0x14]
sub cl, 0x43
add cl, bl
jmp 0x459436
sub dl, 0xa
mov cl, 0x23
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
add cl, bl
mov byte [ebp + 0xc], cl
jmp 0x459a0e
sub dl, 0x7c
mov cl, 0x32
mov al, dl
and al, bl
sub cl, al
add cl, cl
lea eax, [edx + ecx]
mov edx, dword [ebp + 8]
add al, bl
mov dword [ebp + 0xc], eax
jmp 0x459a13
lea ecx, [edx + 0x12]
mov ah, dl
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x7e
add cl, bl
jmp 0x45995d
lea ecx, [edx - 0x60]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x60
jmp 0x459a33
lea ecx, [edx + 0x2e]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x42
jmp 0x459a6e
mov al, bl
lea ecx, [edx - 0x64]
and al, cl
add al, al
sub bl, al
lea eax, [ecx + ebx]
sub al, 0x44
jmp 0x4597bb
add dl, 0x2a
mov al, bl
and al, dl
mov cl, bl
add al, al
sub dl, 0x26
sub cl, al
add cl, dl
mov edx, dword [ebp + 8]
mov ah, dl
jmp 0x4599f5
lea ecx, [edx - 0x48]
mov al, bl
and al, cl
add al, al
sub bl, al
sub cl, 8
jmp 0x459831
add dl, 0x46
mov al, bl
and al, dl
mov cl, 0xb
sub cl, al
add cl, cl
add cl, bl
add cl, dl
mov edx, dword [ebp + 8]
jmp 0x4599d4
sub dl, 0x2c
mov al, bl
and al, dl
mov cl, 0x1a
sub cl, al
add cl, cl
add cl, bl
add cl, dl
mov edx, dword [ebp + 8]
mov ah, dl
jmp 0x4599c0
lea eax, [edi + 0x20]
cmp esi, eax
jae 0x459768
sub dl, 0x47
mov al, bl
and al, dl
mov cl, bl
add al, al
sub dl, 0xf
sub cl, al
add cl, dl
mov edx, dword [ebp + 8]
lea eax, [edi + esi]
cmp eax, 0x3e8
je 0x459949
lea eax, [edi + 5]
cmp esi, eax
jbe 0x4597e4
add dl, 0x6b
mov al, bl
and al, dl
mov cl, bl
add al, al
sub cl, al
add cl, 0x13
add cl, dl
cmp esi, 0x5a
jae 0x459929
lea eax, [edi + 0x20]
cmp esi, eax
jbe 0x459856
mov dl, byte [ebp + 8]
mov al, bl
sub dl, 0x68
mov cl, bl
and al, dl
add al, al
sub cl, al
sub cl, 0x28
add cl, dl
cmp edi, 5
jb 0x45991d
mov ah, byte [ebp + 8]
mov al, bl
mov dl, ah
mov cl, 0x16
add dl, 0xc
and al, dl
sub cl, al
add cl, cl
add cl, bl
add cl, dl
add cl, cl
jmp 0x4599bd
lea eax, [edi + 1]
cmp esi, eax
jne 0x459788
sub dl, 0x50
mov al, bl
and al, dl
mov cl, 0x18
sub cl, al
add cl, cl
add cl, bl
add cl, dl
mov edx, dword [ebp + 8]
jmp 0x459a70
inc eax
cmp esi, eax
jne 0x4597a4
mov ah, dl
mov al, bl
sub dl, 0x6c
mov cl, bl
and al, dl
add al, al
sub cl, al
sub dl, 0xc
jmp 0x459958
lea eax, [edi + 5]
cmp esi, eax
jne 0x4597c3
mov al, bl
lea ecx, [edx + 0x78]
and al, cl
add al, al
sub bl, al
lea eax, [ecx + ebx]
sub al, 0x48
mov dword [ebp + 0xc], eax
jmp 0x459a11
lea eax, [edi + 8]
cmp esi, eax
jne 0x4596ee
mov ah, dl
mov al, bl
add dl, 0x40
mov cl, 0x20
and al, dl
sub cl, al
add cl, cl
add cl, bl
jmp 0x4599bb
lea eax, [edi + 1]
cmp esi, eax
jne 0x459802
mov ah, dl
mov al, bl
sub dl, 0x23
mov cl, bl
and al, dl
add al, al
sub cl, al
sub dl, 0xb
jmp 0x4599bb
inc eax
cmp esi, eax
jne 0x45981c
lea ecx, [edx + 0x4f]
mov al, bl
and al, cl
add al, al
sub bl, al
sub cl, 0x29
add cl, bl
jmp 0x4599d4
lea eax, [edi + 3]
cmp esi, eax
jne 0x459838
lea ecx, [edx - 0x3f]
mov al, bl
and al, cl
add al, al
sub bl, al
sub cl, 0x47
add cl, bl
jmp 0x4599d5
lea eax, [edi + 7]
cmp esi, eax
jne 0x459719
lea ecx, [edx + 0x6d]
mov al, bl
and al, cl
add al, al
sub bl, al
add cl, 5
jmp 0x459a6e
lea eax, [edi + 1]
cmp esi, eax
jne 0x459873
mov edx, dword [ebp + 8]
mov al, bl
lea ecx, [edx + 0xa]
and al, cl
add al, al
sub bl, al
sub cl, 0x46
jmp 0x459a6e
inc eax
cmp esi, eax
jne 0x459898
mov dl, byte [ebp + 8]
mov al, bl
sub dl, 0x2e
mov cl, 0x21
and al, dl
sub cl, al
add cl, cl
lea eax, [ebx + ecx]
add al, dl
mov edx, dword [ebp + 8]
mov dword [ebp + 0xc], eax
jmp 0x459a11
lea eax, [edi + 6]
cmp esi, eax
jne 0x4598b8
mov ah, byte [ebp + 8]
mov al, bl
mov dl, ah
mov cl, 0x12
add dl, 0x44
and al, dl
sub cl, al
add cl, cl
add cl, bl
jmp 0x4599f0
lea eax, [edi + 5]
cmp esi, eax
jne 0x4598db
mov dl, byte [ebp + 8]
mov al, bl
sub dl, 0x4a
mov cl, 3
and al, dl
sub cl, al
add cl, cl
add cl, bl
add cl, dl
mov edx, dword [ebp + 8]
jmp 0x4599d5
lea eax, [edi + 4]
cmp esi, eax
jne 0x4598f8
mov edx, dword [ebp + 8]
mov al, bl
lea ecx, [edx + 0x28]
and al, cl
add al, al
sub bl, al
sub cl, 0x18
jmp 0x459815
lea eax, [edi + 7]
cmp esi, eax
jne 0x459742
mov ah, byte [ebp + 8]
mov al, bl
mov dl, ah
mov cl, bl
sub dl, 0x66
and al, dl
add al, al
sub cl, al
sub dl, 0x36
jmp 0x4599bb
mov edx, dword [ebp + 8]
mov byte [ebp + edx + 0x5c], cl
jmp 0x459a7f
mov ecx, dword [ebp + 8]
mov al, bl
mov ah, cl
mov dl, ah
add dl, 0x7e
mov cl, byte [ebp + ecx + 0x5c]
and al, dl
add al, al
sub cl, al
add cl, bl
sub dl, 0x72
jmp 0x4599f0
mov ah, dl
mov al, bl
sub dl, 0x10
mov cl, 0x38
and al, dl
sub cl, al
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
sub ah, 0x57
mov al, ah
and al, bl
add al, al
sub ah, al
add ah, 0x61
add ah, bl
inc edi
mov byte [ebp + edx + 0x5c], ah
movzx eax, ah
add eax, edi
sub edx, eax
mov dword [ebp + 8], edx
jmp 0x459a35
lea ecx, [edx - 0x7b]
mov al, bl
and al, cl
add al, al
sub bl, al
add cl, 0x5d
jmp 0x459a6e
mov al, bl
lea ecx, [edx + 0x2f]
and al, cl
add al, al
sub bl, al
lea eax, [ecx + ebx]
sub al, 0x49
mov dword [ebp + 0xc], eax
jmp 0x459a13
mov ah, dl
mov al, bl
sub dl, 0xb
mov cl, bl
and al, dl
add al, al
sub cl, al
add dl, 0x4d
add cl, dl
mov edx, dword [ebp + 8]
mov al, bl
sub ah, 0x3b
and al, ah
add al, al
sub bl, al
sub bl, 0x63
add bl, ah
mov byte [ebp + edx + 0x5c], bl
inc edi
mov dword [ebp + 0xc], ecx
dec edx
jmp 0x459a7c
mov ah, dl
mov al, bl
sub dl, 0x45
mov cl, bl
and al, dl
add al, al
sub cl, al
sub dl, 0x1d
add cl, dl
mov edx, dword [ebp + 8]
mov dword [ebp + 0xc], ecx
add ah, 0x37
mov al, ah
add ah, 0x7f
and al, bl
add al, al
sub cl, al
add cl, ah
add cl, bl
mov byte [ebp + edx + 0x5c], cl
mov eax, dword [ebp + 0xc]
add esi, edi
or ecx, 0xffffffff
movzx eax, al
sub ecx, eax
add edx, ecx
jmp 0x459a7c
mov bl, byte [ebp + 4]
lea ecx, [edx - 0x77f95d0d]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x5b
add cl, bl
mov dword [ebp + 0xc], ecx
add dl, 0x62
mov cl, 0x29
mov al, dl
and al, bl
sub cl, al
or eax, 0xffffffff
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
add cl, bl
inc esi
sub eax, esi
mov byte [ebp + edx + 0x5c], cl
add edx, eax
jmp 0x459a73
mov ebx, dword [ebp + 4]
lea ecx, [edx + 0x6f4b3f81]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x79
add cl, bl
mov dword [ebp + 0xc], ecx
movzx eax, byte [ebp + edx + 0x5c]
add eax, edi
add edx, eax
mov ecx, dword [ebp + 0xc]
inc edx
jmp 0x459420
add dl, 0x73
mov al, bl
and al, dl
add al, al
sub bl, al
lea ecx, [edx + ebx]
sub cl, 0x25
xor ebx, ebx
jmp 0x45941e
inc dl
mov al, bl
and al, dl
add al, al
sub bl, al
lea ecx, [edx + ebx]
sub cl, 7
xor ebx, ebx
jmp 0x459412
lea eax, [ebp + 0x16592fe]
jmp 0x45a360
lea eax, [ebp + 0xc344b7]
jmp 0x45a360
lea eax, [ebp + 0x5c]
jmp 0x45a360
push 6
pop ecx
xor eax, eax
mov dword [ebp + 0x40], 0x2b242526
lea edi, [ebp + 0x44]
rep stosd dword es:[edi], eax
mov cl, byte [ebp + 0x13]
mov esi, dword [0x4cad28]
mov edi, dword [0x4cad2c]
mov edx, ebx
mov dword [ebp + 8], edx
cmp edx, 0x1c
jae 0x45a35d
mov bl, byte [ebp + edx + 0x40]
movzx eax, bl
mov dword [ebp - 0x14], eax
mov dword [ebp + 4], eax
cmp esi, edx
ja 0x45a355
lea eax, [edi + 0x64]
cmp esi, eax
jae 0x459b33
lea ecx, [edx + 0xeb1e723]
mov al, cl
and al, byte [ebp + 4]
add al, al
sub cl, al
add cl, 0xb
add cl, byte [ebp + 4]
jmp 0x459b73
lea eax, [edi + 1]
cmp esi, eax
je 0x45a2f3
inc eax
cmp esi, eax
je 0x45a2b3
lea eax, [edi + 5]
cmp esi, eax
je 0x45a272
lea eax, [edi + 7]
cmp esi, eax
je 0x45a259
lea eax, [edi + 6]
cmp esi, eax
je 0x45a246
lea eax, [edi + 9]
cmp esi, eax
je 0x45a219
cmp edi, edx
ja 0x45a34d
lea eax, [edi + 0x40]
cmp esi, eax
jae 0x459b95
lea ecx, [edx - 0x79]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x4f
jmp 0x459d46
lea eax, [edi + 1]
cmp esi, eax
je 0x45a20b
inc eax
cmp esi, eax
je 0x45a1fb
lea eax, [edi + 3]
cmp esi, eax
je 0x45a1eb
lea eax, [edi + 4]
cmp esi, eax
je 0x45a1ab
lea eax, [edi + 2]
cmp esi, eax
je 0x45a198
lea eax, [edi + esi]
cmp eax, edx
jbe 0x459f5f
lea eax, [edi + 8]
cmp esi, eax
je 0x459f47
lea eax, [edi + 0x40]
cmp esi, eax
je 0x459f34
lea eax, [edi + 0x64]
cmp esi, eax
je 0x459f21
lea eax, [edi + 0x61]
cmp esi, eax
je 0x459f09
lea ecx, [edi + 2]
cmp esi, ecx
je 0x459eec
lea eax, [edi + 9]
cmp esi, eax
je 0x459ed7
lea eax, [edi + 0x10]
cmp esi, eax
je 0x459ebe
lea eax, [edi + 0x80]
cmp esi, eax
je 0x459eb4
lea eax, [edi + 0x7a]
cmp esi, eax
je 0x459ea1
lea eax, [edi + 3]
cmp esi, eax
je 0x459bd5
mov esi, ecx
lea edi, [esi + 5]
lea eax, [edi + 9]
cmp esi, eax
jb 0x45a335
lea eax, [edi + 0x42]
cmp esi, eax
jb 0x45a31e
lea eax, [edi + 0x1000]
cmp esi, eax
jb 0x459d62
lea eax, [edi + 0x7a]
cmp esi, eax
jb 0x459d4d
lea eax, [edi + 3]
cmp esi, eax
jb 0x459d38
lea eax, [edi + 0xa]
cmp esi, eax
jb 0x459e8e
lea eax, [edi + 0x64]
cmp esi, eax
jb 0x459e7b
lea eax, [edi + 0x200]
cmp esi, eax
jb 0x459e68
lea eax, [edi + 0x41]
cmp esi, eax
jb 0x459e4f
lea eax, [edi + 4]
cmp esi, eax
jb 0x459bd5
lea esi, [edi + 8]
lea edi, [esi + 6]
lea eax, [edi + 0xa]
cmp esi, eax
ja 0x459e38
lea eax, [edi + 0x64]
cmp esi, eax
ja 0x459e22
lea eax, [edi + 0x61]
cmp esi, eax
ja 0x459e0b
lea eax, [edi + 2]
cmp esi, eax
ja 0x459df6
lea eax, [edi + 4]
cmp esi, eax
ja 0x459dda
lea eax, [edi + 0x10]
cmp esi, eax
ja 0x459dbf
lea eax, [edi + 0x80]
cmp esi, eax
ja 0x459dac
lea eax, [edi + 0x3e8]
cmp esi, eax
ja 0x459d95
lea eax, [edi + 0x5a]
cmp esi, eax
ja 0x459d7a
lea eax, [edi + 5]
cmp esi, eax
ja 0x459bd5
lea esi, [edi + 9]
lea edi, [esi + 0x20]
jmp 0x459bd5
lea ecx, [edx - 0x2b]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x2d
add cl, bl
jmp 0x459bca
lea ecx, [edx - 0x35]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x73
add cl, bl
jmp 0x459b73
lea ecx, [edx - 0x3f]
mov al, cl
and al, bl
add al, al
sub cl, al
mov eax, dword [ebp - 0x14]
sub cl, 0x47
add cl, bl
jmp 0x459b0a
add dl, 0x66
mov cl, 0x1b
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
add cl, bl
mov ah, dl
jmp 0x45a230
add dl, 0x5c
mov cl, 0x3e
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
jmp 0x45a254
lea ecx, [edx + 0x52]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x3e
jmp 0x45a267
add dl, 0x48
mov cl, 4
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
add cl, bl
mov ah, dl
jmp 0x45a289
add dl, 0x3e
mov cl, 0x27
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
add cl, bl
mov byte [ebp + 0xc], cl
jmp 0x45a2a2
lea ecx, [edx + 0x34]
mov al, cl
and al, bl
add al, al
sub cl, al
lea eax, [ebx + ecx]
sub al, 0x6c
jmp 0x45a028
lea ecx, [edx + 0x2a]
mov ah, dl
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x26
add cl, bl
jmp 0x45a1c2
add dl, 0x20
mov cl, 0x10
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
add cl, bl
jmp 0x45a2cb
add dl, 0x16
mov cl, 0x33
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
jmp 0x45a307
lea ecx, [edx - 3]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x15
add cl, bl
mov byte [ebp + edx + 0x40], cl
jmp 0x45a318
lea ecx, [edx - 0xd]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x5b
jmp 0x459fbf
lea ecx, [edx - 0x17]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x5f
jmp 0x459f9b
lea ecx, [edx - 0x21]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x19
jmp 0x459f74
lea ecx, [edx - 0x6c]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0xc
jmp 0x45a307
sub dl, 0x76
mov cl, 0x1d
jmp 0x459e27
mov ah, dl
mov cl, ah
sub cl, 0x80
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x80
add cl, bl
jmp 0x45a1c2
lea ecx, [edx + 0x76]
mov al, cl
and al, bl
add al, al
sub cl, al
lea eax, [ebx + ecx]
sub al, 0x3a
jmp 0x45a028
add dl, 0x6c
mov cl, 6
mov al, dl
and al, bl
sub cl, al
add cl, cl
lea eax, [edx + ecx]
mov edx, dword [ebp + 8]
add al, bl
mov dword [ebp + 0xc], eax
jmp 0x45a2a5
mov ah, dl
mov cl, 0x29
add dl, 0x62
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
add cl, bl
jmp 0x45a286
lea ecx, [edx + 0x58]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x68
jmp 0x45a267
lea ecx, [edx + 0x4e]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x22
jmp 0x45a254
mov ah, dl
mov cl, 0x12
add dl, 0x44
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
add cl, bl
jmp 0x45a22d
lea eax, [edi + 0x20]
cmp esi, eax
jae 0x459fe4
lea ecx, [edx + 5]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x23
add cl, bl
lea eax, [edi + esi]
cmp eax, 0x10
je 0x45a17d
lea eax, [edi + 0x40]
cmp esi, eax
jbe 0x45a061
lea ecx, [edx + 0x4f]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x29
add cl, bl
cmp esi, 0x20
jae 0x45a161
lea eax, [edi + 0x42]
cmp esi, eax
jbe 0x45a0ef
lea ecx, [edx - 0x48]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 8
add cl, bl
cmp edi, 0x28
jb 0x459e5f
mov ah, dl
mov cl, 0x1e
add dl, 0x1c
mov al, dl
and al, bl
sub cl, al
add cl, cl
add cl, dl
add cl, bl
add cl, cl
jmp 0x45a22d
lea eax, [edi + 1]
cmp esi, eax
jne 0x459ff5
sub dl, 0x10
mov cl, 0x38
jmp 0x459e3d
inc eax
cmp esi, eax
jne 0x45a011
mov ah, dl
mov cl, ah
add cl, 4
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x1c
jmp 0x459ed0
lea eax, [edi + 4]
cmp esi, eax
jne 0x45a030
lea ecx, [edx + 0xe]
mov al, cl
and al, bl
add al, al
sub cl, al
lea eax, [ebx + ecx]
sub al, 0x62
mov dword [ebp + 0xc], eax
jmp 0x45a2a7
lea eax, [edi + 5]
cmp esi, eax
jne 0x45a043
mov ah, dl
mov cl, 9
add dl, 0x22
jmp 0x459f10
lea eax, [edi + 7]
cmp esi, eax
jne 0x459f76
lea ecx, [edx + 0x2c]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x34
jmp 0x45a267
lea eax, [edi + 1]
cmp esi, eax
jne 0x45a081
mov ah, dl
mov cl, ah
add cl, 0x59
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x6f
add cl, bl
jmp 0x45a230
inc eax
cmp esi, eax
jne 0x45a099
lea ecx, [edx + 0x63]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x4b
jmp 0x45a254
lea eax, [edi + 3]
cmp esi, eax
jne 0x45a0b3
lea ecx, [edx + 0x6d]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 5
jmp 0x45a267
lea eax, [edi + 4]
cmp esi, eax
jne 0x45a0d1
mov ah, dl
mov cl, ah
sub cl, 0x6b
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x13
jmp 0x459ed0
lea eax, [edi + 6]
cmp esi, eax
jne 0x459f9d
lea ecx, [edx - 0x57]
mov al, cl
and al, bl
add al, al
sub cl, al
add cl, 0x61
jmp 0x45a307
lea eax, [edi + 1]
cmp esi, eax
jne 0x45a109
lea ecx, [edx - 0x3e]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x4e
jmp 0x45a307
lea eax, [edi + 3]
cmp esi, eax
jne 0x45a125
lea ecx, [edx - 0x20]
mov al, cl
and al, bl
add al, al
sub cl, al
lea eax, [ebx + ecx]
sub al, 0x20
jmp 0x45a028
lea eax, [edi + 5]
cmp esi, eax
jne 0x45a13f
lea ecx, [edx + 8]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x38
jmp 0x45a254
lea eax, [edi + 7]
cmp esi, eax
jne 0x459fc1
mov ah, dl
mov cl, ah
add cl, 0x12
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x7e
jmp 0x45a07a
mov ecx, dword [ebp + 8]
mov ah, dl
add dl, 0x26
mov al, dl
and al, bl
mov cl, byte [ebp + ecx + 0x40]
add al, al
sub cl, al
sub dl, 0xa
jmp 0x459f18
mov ah, dl
mov cl, ah
add cl, 0x30
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, byte [ebp + edx + 0x40]
sub cl, 0x50
jmp 0x459ed0
lea ecx, [edx - 0x1f]
mov al, bl
and al, cl
add al, al
sub bl, al
sub cl, 0x27
jmp 0x45a307
mov ah, dl
mov al, bl
sub dl, 0x33
mov cl, bl
and al, dl
add dl, 0x65
add al, al
sub cl, al
add cl, dl
mov edx, dword [ebp + 8]
mov dword [ebp + 0xc], ecx
add ah, 0x35
mov al, bl
and al, ah
mov cl, bl
add al, al
sub ah, 0x73
sub cl, al
add cl, ah
inc edi
movzx eax, cl
add eax, edi
mov byte [ebp + edx + 0x40], cl
sub edx, eax
mov dword [ebp + 8], edx
jmp 0x45a2d1
lea ecx, [edx - 0x5b]
mov al, bl
and al, cl
add al, al
sub bl, al
add cl, 0x7d
jmp 0x45a267
lea ecx, [edx - 0x65]
mov al, bl
and al, cl
add al, al
sub bl, al
sub cl, 0x3d
jmp 0x45a254
mov ah, dl
mov al, bl
sub dl, 0x6f
and al, dl
add dl, 9
jmp 0x45a225
mov ah, dl
mov al, bl
add dl, 0x7d
and al, dl
sub dl, 0x6b
add al, al
mov cl, bl
sub cl, al
add cl, dl
mov edx, dword [ebp + 8]
mov al, bl
add ah, 0x21
and al, ah
add al, al
sub bl, al
add bl, 0x19
add bl, ah
mov byte [ebp + edx + 0x40], bl
jmp 0x45a256
lea ecx, [edx + 0x73]
mov al, bl
and al, cl
add al, al
sub bl, al
sub cl, 0x25
add cl, bl
inc edi
jmp 0x45a269
lea ecx, [edx + 0x69]
mov al, bl
and al, cl
add al, al
sub bl, al
add cl, 0x21
add cl, bl
mov dword [ebp + 0xc], ecx
dec edx
jmp 0x45a315
mov ah, dl
mov al, bl
add dl, 0x5f
mov cl, bl
and al, dl
add dl, 0x67
add al, al
sub cl, al
add cl, dl
mov edx, dword [ebp + 8]
mov dword [ebp + 0xc], ecx
add ah, 0x2b
mov al, bl
and al, ah
sub ah, 0x2d
add al, al
sub cl, al
add cl, bl
add cl, ah
mov byte [ebp + edx + 0x40], cl
mov eax, dword [ebp + 0xc]
add esi, edi
or ecx, 0xffffffff
movzx eax, al
sub ecx, eax
add edx, ecx
jmp 0x45a315
mov ecx, dword [ebp + 4]
add edx, 0x84ce6b37
mov al, dl
mov bl, cl
and al, cl
add dl, 0x7f
add al, al
sub cl, al
add cl, dl
mov edx, dword [ebp + 8]
mov dword [ebp + 0xc], ecx
add dl, 0x3a
mov cl, 0x35
mov al, dl
and al, bl
sub cl, al
or eax, 0xffffffff
add cl, cl
add cl, dl
mov edx, dword [ebp + 8]
add cl, bl
inc esi
sub eax, esi
mov byte [ebp + edx + 0x40], cl
add edx, eax
jmp 0x45a30c
mov ebx, dword [ebp + 4]
lea ecx, [edx - 0x363fd6d3]
mov al, cl
and al, bl
add al, al
sub cl, al
sub cl, 0x3b
add cl, bl
mov dword [ebp + 0xc], ecx
movzx eax, byte [ebp + edx + 0x40]
add eax, edi
add edx, eax
mov ecx, dword [ebp + 0xc]
inc edx
jmp 0x459af4
sub dl, 0x49
mov al, bl
and al, dl
add al, al
sub bl, al
lea ecx, [edx + ebx]
dec cl
xor ebx, ebx
jmp 0x459af2
sub dl, 0x53
mov al, bl
and al, dl
add al, al
sub bl, al
lea ecx, [edx + ebx]
add cl, 0x45
xor ebx, ebx
jmp 0x459ae6
lea eax, [ebp + 0x174f5ba]
jmp 0x45a360
lea eax, [ebp + 0xfc16bf]
jmp 0x45a360
lea eax, [ebp + 0x40]
cmp dword [eax], 0
setne al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x74]
xor ecx, ebp
call fcn.0046be79
add ebp, 0x78
leave
ret
mov ecx, dword [ebp + 8]
test edi, edi
jne 0x459395
mov eax, dword [eax]
jmp 0x459363
mov ecx, dword [ebp + 8]
test edx, edx
jne 0x4592f2
mov eax, dword [eax]
jmp 0x4592c0
mov ecx, dword [ebp + 8]
test edi, edi
jne 0x459220
mov eax, dword [eax]
jmp 0x4591ee
mov ecx, dword [ecx + 4]
jmp 0x459164