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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x100
mov dword [esp + 0x48], ecx
mov edi, dword [ebp + 0x14]
mov eax, dword [0x4ad2c0]
xor eax, ebp
mov dword [esp + 0xf8], eax
movzx eax, byte [ebp + 0x1c]
mov dword [esp + 0x44], eax
mov eax, 0xfb83a41d
jmp 0x422b70
mov eax, dword [0x4aefc8]
mov esi, 0xcf3941c4
mov ebx, 0xceabe27d
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0xceabe27d
sete cl
cmove eax, esi
cmp dword [0x4aefc4], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, esi
nop dword [eax]
cmp eax, 0xa5f5bb0
jle 0x422bf0
cmp eax, 0x409c2cd1
jg 0x422cf0
cmp eax, 0x2b7e3585
jle 0x422e26
cmp eax, 0x32a9c75a
jle 0x422f5c
cmp eax, 0x35c3285c
jg 0x4232d6
cmp eax, 0x32a9c75b
je 0x42353d
cmp eax, 0x34e50a47
jne 0x422b70
mov edx, dword [0x4aefc8]
mov ecx, dword [0x4aefc4]
mov esi, 0xea2e6cbc
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xa430483d
jmp 0x4238b6
cmp eax, 0xd004c331
jle 0x422d50
cmp eax, 0xe263634c
jle 0x422e75
cmp eax, 0xf9f92660
jle 0x422fc1
cmp eax, 0x2c9d0d3
jg 0x423312
cmp eax, 0xf9f92661
je 0x423547
cmp eax, 0xfb83a41d
jne 0x422b70
mov eax, dword [esp + 0x48]
mov dword [esp + 0x24], eax
mov eax, dword [0x4af3f8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete cl
cmp dword [0x4af3f4], 0xa
setge dl
setl ah
or dl, al
xor ah, cl
mov ecx, 0xc55e8175
xor dl, 1
or dl, ah
mov eax, 0xe6350323
mov edx, 0x40445780
cmovne eax, ecx
mov ecx, 0xe6350323
cmovne ecx, edx
mov edx, 0xcb9a9286
nop word [eax + eax]
cmp edx, 0xcb9a9285
jle 0x422cc0
cmp edx, 0xcb9a9286
je 0x422cdb
cmp edx, 0xe6350323
je 0x422cdf
cmp edx, 0x40445780
jne 0x422c90
mov edx, eax
jmp 0x422c90
cmp edx, 0x92fcba3a
je 0x42367b
cmp edx, 0xc55e8175
jne 0x422c90
mov edx, 0x92fcba3a
jmp 0x422c90
mov edx, ecx
jmp 0x422c90
mov edx, 0x40445780
jmp 0x422c90
cmp eax, 0x6e97ecc8
jle 0x422ebf
cmp eax, 0x75ad7ed6
jle 0x423086
cmp eax, 0x77377d20
jg 0x423332
cmp eax, 0x75ad7ed7
je 0x42369a
cmp eax, 0x75e6f0fd
jne 0x422b70
lea ecx, [ebp + 0xc]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x24]
mov eax, 0x2b7e3586
jmp 0x422b70
cmp eax, 0x9526af3a
jle 0x422f0a
cmp eax, 0xb5dc45af
jg 0x4230ff
cmp eax, 0xafc924cc
jg 0x423513
cmp eax, 0x9526af3b
je 0x4236e5
cmp eax, 0xa430483d
jne 0x422b70
mov eax, dword [0x4af3f8]
mov edx, 0x40445780
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x4af3f4], 0xa
setl cl
or cl, al
mov eax, 0xe6350323
mov ecx, 0xc55e8175
cmovne eax, ecx
mov ecx, 0xe6350323
cmovne ecx, edx
mov edx, 0xcb9a9286
nop dword [eax + eax]
cmp edx, 0xcb9a9285
jle 0x422e00
cmp edx, 0xcb9a9286
je 0x422e1b
cmp edx, 0xe6350323
je 0x422e1f
cmp edx, 0x40445780
jne 0x422dd0
mov edx, eax
jmp 0x422dd0
cmp edx, 0x92fcba3a
je 0x42370b
cmp edx, 0xc55e8175
jne 0x422dd0
mov edx, 0x92fcba3a
jmp 0x422dd0
mov edx, ecx
jmp 0x422dd0
mov edx, 0x40445780
jmp 0x422dd0
cmp eax, 0x1fae708c
jg 0x42312a
cmp eax, 0xa5f5bb1
je 0x423723
cmp eax, 0x18fd362e
je 0x42372d
cmp eax, 0x1b30cca6
jne 0x422b70
lea eax, [esp + 0xb0]
lea ecx, [esp + 0xe0]
mov dword [esp], eax
call fcn.00439620
sub esp, 4
mov eax, 0x697e3646
jmp 0x422b70
cmp eax, 0xdad01383
jg 0x42315d
cmp eax, 0xd004c332
je 0x42374d
cmp eax, 0xd2dc2849
je 0x42377c
cmp eax, 0xd652d71a
jne 0x422b70
movzx eax, byte [esp + 0x20]
mov edx, 0x8f23bce3
mov ecx, eax
xor cl, 0xfe
test cl, al
mov eax, 0xd2dc2849
cmove eax, edx
jmp 0x422b70
cmp eax, 0x5d407e09
jg 0x423188
cmp eax, 0x409c2cd2
je 0x423867
cmp eax, 0x4930d4a8
je 0x423887
cmp eax, 0x4a1002fa
jne 0x422b70
mov eax, dword [0x4aefc8]
mov ebx, 0x2b7e3586
mov esi, 0x75e6f0fd
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x75e6f0fd
jmp 0x423c75
cmp eax, 0x911ff172
jg 0x4232ab
cmp eax, 0x86321a8a
je 0x422b33
cmp eax, 0x8a4e2fe9
je 0x4238cc
cmp eax, 0x8f23bce3
jne 0x422b70
mov eax, dword [0x4aefc8]
mov esi, 0x70f5e085
mov ebx, 0x3043b5e3
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x3043b5e3
jmp 0x422b54
cmp eax, 0x2b7e3586
je 0x4238ea
cmp eax, 0x2e8df0e2
je 0x42394f
cmp eax, 0x3043b5e3
jne 0x422b70
mov eax, 0x7d21df31
nop word cs:[eax + eax]
cmp eax, 0x1ed67ec8
je 0x423969
cmp eax, 0x7d21df31
jne 0x422f90
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0xb0]
mov eax, dword [edx]
mov dword [esp], ecx
mov ecx, edx
call dword [eax + 0x18]
sub esp, 4
mov eax, 0x1ed67ec8
jmp 0x422f90
cmp eax, 0xe263634d
je 0x423973
cmp eax, 0xe6c46838
je 0x423a2b
cmp eax, 0xea2e6cbc
jne 0x422b70
mov eax, dword [0x4af3f8]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
setne al
cmp dword [0x4af3f4], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0xe6350323
or cl, dl
mov ecx, 0xc55e8175
mov edx, 0x40445780
cmovne eax, ecx
mov ecx, 0xe6350323
cmovne ecx, edx
mov edx, 0xcb9a9286
nop dword [eax]
cmp edx, 0xcb9a9285
jle 0x423060
cmp edx, 0xcb9a9286
je 0x42307b
cmp edx, 0xe6350323
je 0x42307f
cmp edx, 0x40445780
jne 0x423030
mov edx, eax
jmp 0x423030
cmp edx, 0x92fcba3a
je 0x423a82
cmp edx, 0xc55e8175
jne 0x423030
mov edx, 0x92fcba3a
jmp 0x423030
mov edx, ecx
jmp 0x423030
mov edx, 0x40445780
jmp 0x423030
cmp eax, 0x6e97ecc9
je 0x423ada
cmp eax, 0x70f5e085
je 0x423af1
cmp eax, 0x73c436ab
jne 0x422b70
mov edx, dword [0x4aefc8]
mov ecx, dword [0x4aefc4]
mov esi, 0x64e24a22
mov ebx, dword [esp + 0x38]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x35c3285d
cmovne edx, esi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, esi
mov esi, dword [esp + 0x3c]
cmp ecx, 0xa
cmovge eax, edx
cmp ebx, 1
sbb esi, 0
setl byte [esp + 0x21]
jmp 0x422b70
cmp eax, 0xb5dc45b0
je 0x423b31
cmp eax, 0xceabe27d
je 0x423b3b
cmp eax, 0xcf3941c4
jne 0x422b70
mov eax, 0xe6c46838
jmp 0x422b70
cmp eax, 0x1fae708d
je 0x423b45
cmp eax, 0x277a9183
je 0x423b4f
cmp eax, 0x281986bd
jne 0x422b70
mov eax, 0x32a9c75b
mov dword [esp + 0x28], 0
jmp 0x422b70
cmp eax, 0xdad01384
je 0x423b7c
cmp eax, 0xdc97ae5c
je 0x423bac
cmp eax, 0xddda2bad
jne 0x422b70
mov eax, 0xd004c332
jmp 0x422b70
cmp eax, 0x5d407e0a
je 0x423c5b
cmp eax, 0x64e24a22
je 0x423c82
cmp eax, 0x697e3646
jne 0x422b70
mov eax, 0xe5982db4
nop
cmp eax, 0xfbeba97
je 0x423c8c
cmp eax, 0xe5982db4
jne 0x4231b0
lea ecx, [esp + 0xb0]
call fcn.004096d0
mov eax, dword [0x4af450]
mov edx, 0x1f072494
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x4af44c], 0xa
setl cl
or cl, al
mov eax, 0xe155e4a7
mov ecx, 0x5e2edcb5
cmovne eax, ecx
mov ecx, 0xe155e4a7
cmovne ecx, edx
mov edx, 0xc5022d28
nop
cmp edx, 0xe155e4a6
jle 0x423240
cmp edx, 0xe155e4a7
je 0x423254
cmp edx, 0x5e2edcb5
je 0x42325b
cmp edx, 0x1f072494
jne 0x423210
mov edx, eax
jmp 0x423210
cmp edx, 0xb65abd80
je 0x423262
cmp edx, 0xc5022d28
jne 0x423210
mov edx, ecx
jmp 0x423210
mov edx, 0x1f072494
jmp 0x423210
mov edx, 0xb65abd80
jmp 0x423210
mov eax, 0xb6c5bc6e
nop word [eax + eax]
cmp eax, 0xb6c5bc6e
je 0x423280
cmp eax, 0xca3adc25
jne 0x423270
jmp 0x423287
mov eax, 0xca3adc25
jmp 0x423270
lea eax, [esp + 0xb0]
mov dword [esp + 0xa8], eax
mov ecx, dword [esp + 0xa8]
call fcn.0040ab80
mov eax, 0xfbeba97
jmp 0x4231b0
cmp eax, 0x911ff173
je 0x423c96
cmp eax, 0x93d63d14
je 0x423cc1
cmp eax, 0x94818c88
jne 0x422b70
mov eax, 0x18fd362e
jmp 0x422b70
cmp eax, 0x35c3285d
je 0x423cec
cmp eax, 0x3c43c6fc
jne 0x422b70
mov eax, dword [0x4aefc8]
mov esi, 0x73c436ab
mov ebx, 0x35c3285d
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x35c3285d
jmp 0x422b54
cmp eax, 0x2c9d0d4
je 0x423cfe
cmp eax, 0x5ac89c3
jne 0x422b70
mov eax, 0x4930d4a8
jmp 0x422b70
cmp eax, 0x77377d21
je 0x423d08
cmp eax, 0x7f55498a
jne 0x422b70
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
vmovsd xmm0, qword [esp + 0x88]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x10], edx
lea edx, [esp + 0xa0]
mov dword [esp + 0x14], ecx
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00429b50
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0xa4]
lea eax, [ebp + 0xc]
mov dword [esp + 0x18], edi
mov edi, 0xfd54f554
mov ebx, 0xfd54f554
mov esi, 0x97bc6752
mov dword [eax + 4], edx
mov dword [eax], ecx
mov eax, dword [0x4af3f0]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x4c], edx
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete cl
cmp dword [0x4af3ec], 0xa
setge dl
setl ah
or dl, al
xor ah, cl
mov ecx, 0x7c6cda08
xor dl, 1
or dl, ah
mov eax, 0xaf172bd3
mov edx, 0x7c6cda08
cmovne ecx, eax
mov eax, 0xe3a21a7d
cmovne edx, eax
mov eax, 0x79d6fc67
mov dword [esp + 0x34], ecx
cmovne edi, eax
mov eax, 0x67d2fee9
cmovne ebx, eax
jmp 0x423440
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0xa4]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x34]
mov dword [eax + 0x24], 0
mov dword [eax + 0x20], 0
nop word cs:[eax + eax]
mov eax, esi
cmp esi, 0x2808cc6b
jle 0x423480
cmp eax, 0x79d6fc66
jg 0x4234b0
mov esi, edx
cmp eax, 0x2808cc6c
je 0x423440
mov esi, eax
cmp eax, 0x67d2fee9
jne 0x423440
mov eax, dword [esp + 0x18]
mov esi, edi
vmovsd xmm0, qword [eax + 0x20]
vmovsd qword [esp + 0xa0], xmm0
jmp 0x423440
cmp eax, 0xe3a21a7c
jle 0x4234ea
cmp eax, 0xe3a21a7d
je 0x42340d
mov esi, eax
cmp eax, 0xfd54f554
jne 0x423440
mov eax, dword [esp + 0x18]
mov esi, 0x67d2fee9
jmp 0x423440
cmp eax, 0x79d6fc67
je 0x423509
mov esi, eax
cmp eax, 0x7c6cda08
jne 0x423440
mov eax, dword [esp + 0xa0]
mov eax, dword [esp + 0xa4]
mov eax, dword [esp + 0x18]
mov esi, 0xe3a21a7d
mov dword [eax + 0x24], 0
mov dword [eax + 0x20], 0
jmp 0x423440
mov esi, ebx
cmp eax, 0x97bc6752
je 0x423440
mov esi, eax
cmp eax, 0xaf172bd3
jne 0x423440
jmp 0x423e36
mov esi, 0x2808cc6c
jmp 0x423440
cmp eax, 0xb26f3367
jne 0x424463
mov eax, dword [0x4aefc8]
mov ebx, 0x86321a8a
mov esi, 0xceabe27d
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xceabe27d
jmp 0x423c75
mov eax, 0x34e50a47
jmp 0x422b70
lea eax, [esp + 0xc8]
lea ecx, [esp + 0xe0]
mov dword [esp], eax
call fcn.00439620
sub esp, 4
mov eax, 0xe5982db4
nop word cs:[eax + eax]
cmp eax, 0xfbeba97
je 0x423fab
cmp eax, 0xe5982db4
jne 0x423570
lea ecx, [esp + 0xc8]
call fcn.004096d0
mov eax, dword [0x4af450]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
setne al
cmp dword [0x4af44c], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0xe155e4a7
or cl, dl
mov ecx, 0x5e2edcb5
mov edx, 0x1f072494
cmovne eax, ecx
mov ecx, 0xe155e4a7
cmovne ecx, edx
mov edx, 0xc5022d28
nop dword [eax + eax]
cmp edx, 0xe155e4a6
jle 0x423610
cmp edx, 0xe155e4a7
je 0x423624
cmp edx, 0x5e2edcb5
je 0x42362b
cmp edx, 0x1f072494
jne 0x4235e0
mov edx, eax
jmp 0x4235e0
cmp edx, 0xb65abd80
je 0x423632
cmp edx, 0xc5022d28
jne 0x4235e0
mov edx, ecx
jmp 0x4235e0
mov edx, 0x1f072494
jmp 0x4235e0
mov edx, 0xb65abd80
jmp 0x4235e0
mov eax, 0xb6c5bc6e
nop word [eax + eax]
cmp eax, 0xb6c5bc6e
je 0x423650
cmp eax, 0xca3adc25
jne 0x423640
jmp 0x423657
mov eax, 0xca3adc25
jmp 0x423640
lea eax, [esp + 0xc8]
mov dword [esp + 0xa8], eax
mov ecx, dword [esp + 0xa8]
call fcn.0040ab80
mov eax, 0xfbeba97
jmp 0x423570
mov dword [esp + 0xa8], edi
mov eax, dword [esp + 0xa8]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x54], eax
mov eax, 0x409c2cd2
jmp 0x422b70
mov eax, dword [esp + 0x60]
mov eax, dword [eax + 0x24]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x58]
movsx esi, byte [esp + 0x1f]
mov edi, dword [esp + 0x5c]
vmovsd xmm0, qword [esp + 0x98]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0x10], esi
mov esi, dword [ebp + 8]
mov dword [esp + 0xc], edi
mov edi, dword [ebp + 0x14]
mov dword [esp + 0x14], edx
mov dword [esp], esi
call eax
sub esp, 0x18
mov eax, 0xafc924cd
jmp 0x422b70
mov eax, dword [esp + 0x64]
lea ecx, [esp + 0xe0]
mov dword [esp + 0x2c], eax
call fcn.00401220
movzx eax, byte [ebp + 0x1c]
mov byte [esp + 0x20], al
mov eax, 0xd652d71a
jmp 0x422b70
mov dword [esp + 0xa8], edi
mov eax, dword [esp + 0xa8]
mov eax, 0xea2e6cbc
jmp 0x422b70
mov eax, 0x75ad7ed7
jmp 0x422b70
mov eax, dword [esp + 0x74]
mov ecx, 0xdc97ae5c
not eax
or eax, 0xfffffe3f
cmp eax, 0xffffffbf
mov eax, 0xb26f3367
cmove eax, ecx
jmp 0x422b70
mov eax, dword [edi + 0x20]
mov ecx, dword [edi + 0x24]
mov edx, 0xecc10fdd
nop dword [eax + eax]
cmp edx, 0xecc10fdd
je 0x423775
cmp edx, 0xbc35c06f
jne 0x423760
jmp 0x423fb5
mov edx, 0xbc35c06f
jmp 0x423760
mov eax, 0x30273eb1
nop word cs:[eax + eax]
cmp eax, 0xccd52cfd
jle 0x4237d0
cmp eax, 0xccd52cfe
je 0x4237e5
cmp eax, 0x7776a9e6
je 0x423fe3
cmp eax, 0x30273eb1
jne 0x423790
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0xc8]
mov eax, dword [edx]
mov dword [esp], ecx
mov ecx, edx
call dword [eax + 0x1c]
sub esp, 4
mov eax, 0xccd52cfe
jmp 0x423790
cmp eax, 0x88131c68
je 0x423824
cmp eax, 0xb2e5285a
jne 0x423790
mov eax, 0x88131c68
jmp 0x423790
mov eax, dword [0x4aefc0]
mov ebx, 0x88131c68
mov esi, 0xb2e5285a
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xb2e5285a
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x4aefbc], 0xa
setl dl
cmovge eax, esi
xor dl, cl
cmovne eax, ebx
jmp 0x423790
mov edx, dword [0x4aefc0]
mov ecx, dword [0x4aefbc]
mov esi, 0xb2e5285a
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x7776a9e6
cmovne esi, ebx
test edx, eax
mov eax, esi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, esi
jmp 0x423790
mov eax, dword [esp + 0x54]
mov ecx, 0x8a4e2fe9
not eax
or eax, 0xffffbfff
cmp eax, 0xffffffff
mov eax, 0x77377d21
cmove eax, ecx
jmp 0x422b70
mov edx, dword [0x4aefc8]
mov ecx, dword [0x4aefc4]
mov esi, 0x93d63d14
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x277a9183
cmovne edx, esi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, esi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x422b70
mov eax, dword [esp + 0x44]
mov dword [esp + 0x5c], edi
mov dword [esp + 0x58], eax
movzx eax, byte [ebp + 0x18]
mov byte [esp + 0x1f], al
mov eax, 0x4a1002fa
jmp 0x422b70
mov edx, dword [0x4aefc8]
mov ecx, dword [0x4aefc4]
mov esi, 0xa5f5bb1
lea ebx, [ebp + 0xc]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x75e6f0fd
cmovne edx, esi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, esi
cmp ecx, 0xa
mov ecx, dword [ebx + 4]
cmovge eax, edx
mov dword [esp + 0x9c], ecx
mov ecx, dword [ebx]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
mov dword [esp + 0x60], ecx
jmp 0x422b70
mov eax, dword [esp + 0x68]
mov ecx, 0xdad01384
cmp eax, dword [esp + 0x6c]
mov eax, 0x281986bd
cmova eax, ecx
jmp 0x422b70
mov eax, 0x70f5e085
jmp 0x422b70
lea eax, [esp + 0xe0]
mov esi, 0x809569cc
mov dword [esp + 0x18], eax
mov eax, dword [0x4aeff8]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
setne al
cmp dword [0x4aeff4], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0x78b19bb1
or cl, dl
mov ecx, 0x32b2cab9
mov edx, 0xa9cf5c0f
cmovne eax, ecx
mov ecx, 0x78b19bb1
cmovne ecx, edx
nop dword [eax + eax]
cmp esi, 0xa9cf5c0e
jle 0x423a00
cmp esi, 0x78b19bb1
je 0x423a15
cmp esi, 0x32b2cab9
je 0x423a20
cmp esi, 0xa9cf5c0f
jne 0x4239d0
mov edx, dword [esp + 0x18]
mov esi, eax
add edx, 0x10
jmp 0x4239d0
cmp esi, 0x809569cc
je 0x423a27
cmp esi, 0x88dcb8bb
jne 0x4239d0
jmp 0x423fed
mov esi, dword [esp + 0x18]
mov esi, 0xa9cf5c0f
jmp 0x4239d0
mov esi, 0x88dcb8bb
jmp 0x4239d0
mov esi, ecx
jmp 0x4239d0
lea edx, [ebp + 0xc]
movsx esi, byte [ebp + 0x18]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x24]
vmovsd xmm0, qword [esp + 0x90]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x10], esi
mov dword [esp + 4], edx
mov dword [esp], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x14], ecx
call fcn.004296a0
mov eax, 0xdc97ae5c
mov dword [esp + 0x28], 0
jmp 0x422b70
mov edx, dword [0x4aefc8]
mov ecx, dword [0x4aefc4]
mov esi, 0xa430483d
mov dword [esp + 0xa8], edi
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x94818c88
cmovne esi, ebx
test edx, eax
mov eax, esi
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esp + 0xa8]
cmovge eax, esi
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x74], ecx
jmp 0x422b70
cmp byte [esp + 0x21], 0
mov eax, 0x5d407e0a
mov ecx, 0x281986bd
cmovne eax, ecx
jmp 0x422b70
mov eax, 0x7d21df31
nop word cs:[eax + eax]
cmp eax, 0x1ed67ec8
je 0x42400f
cmp eax, 0x7d21df31
jne 0x423b00
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0xb0]
mov eax, dword [edx]
mov dword [esp], ecx
mov ecx, edx
call dword [eax + 0x18]
sub esp, 4
mov eax, 0x1ed67ec8
jmp 0x423b00
mov eax, 0x911ff173
jmp 0x422b70
mov eax, 0x86321a8a
jmp 0x422b70
mov eax, 0x2e8df0e2
jmp 0x422b70
mov ecx, dword [esp + 0x40]
mov edx, 0xecc10fdd
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
nop
cmp edx, 0xecc10fdd
je 0x423b75
cmp edx, 0xbc35c06f
jne 0x423b60
jmp 0x42404d
mov edx, 0xbc35c06f
jmp 0x423b60
mov eax, dword [edi + 0x20]
mov ecx, dword [edi + 0x24]
mov edx, 0xecc10fdd
nop word [eax + eax]
cmp edx, 0xecc10fdd
je 0x423ba5
cmp edx, 0xbc35c06f
jne 0x423b90
jmp 0x42411b
mov edx, 0xbc35c06f
jmp 0x423b90
lea eax, [esp + 0xe0]
mov esi, 0x809569cc
mov dword [esp + 0x18], eax
mov eax, dword [0x4aeff8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
cmp dword [0x4aeff4], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0x78b19bb1
or cl, dl
mov ecx, 0x32b2cab9
mov edx, 0xa9cf5c0f
cmovne eax, ecx
mov ecx, 0x78b19bb1
cmovne ecx, edx
cmp esi, 0xa9cf5c0e
jle 0x423c30
cmp esi, 0x78b19bb1
je 0x423c45
cmp esi, 0x32b2cab9
je 0x423c50
cmp esi, 0xa9cf5c0f
jne 0x423c00
mov edx, dword [esp + 0x18]
mov esi, eax
add edx, 0x10
jmp 0x423c00
cmp esi, 0x809569cc
je 0x423c57
cmp esi, 0x88dcb8bb
jne 0x423c00
jmp 0x424145
mov esi, dword [esp + 0x18]
mov esi, 0xa9cf5c0f
jmp 0x423c00
mov esi, 0x88dcb8bb
jmp 0x423c00
mov esi, ecx
jmp 0x423c00
mov eax, dword [0x4aefc8]
mov ebx, 0x911ff173
mov esi, 0xb5dc45b0
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xb5dc45b0
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
jmp 0x424030
mov eax, 0x6e97ecc9
jmp 0x422b70
mov eax, 0xd004c332
jmp 0x422b70
mov eax, dword [0x4aefc8]
mov esi, 0x5ac89c3
mov dword [esp + 0x40], edi
mov ebx, 0xb5dc45b0
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xb5dc45b0
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
jmp 0x422b54
mov ecx, dword [esp + 0x40]
mov edx, 0xecc10fdd
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
cmp edx, 0xecc10fdd
je 0x423ce5
cmp edx, 0xbc35c06f
jne 0x423cd0
jmp 0x4242d8
mov edx, 0xbc35c06f
jmp 0x423cd0
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov eax, 0x73c436ab
jmp 0x422b70
mov eax, 0x1b30cca6
jmp 0x422b70
mov eax, 0x1f2812c7
nop dword [eax]
cmp eax, 0x19c5c088
jle 0x423d60
cmp eax, 0x19c5c089
je 0x423d77
cmp eax, 0x1d51260f
je 0x423db6
cmp eax, 0x1f2812c7
jne 0x423d10
mov eax, dword [edi + 0x30]
mov ecx, 0xbab37d08
nop dword [eax + eax]
cmp ecx, 0xbab37d08
je 0x423d55
cmp ecx, 0x4b2914e9
jne 0x423d40
jmp 0x423df9
mov ecx, 0x4b2914e9
jmp 0x423d40
cmp eax, 0xab3496a1
je 0x423e2c
cmp eax, 0xcfd6b13a
jne 0x423d10
jmp 0x4243ab
mov eax, dword [0x4af3e0]
mov esi, 0x1d51260f
mov ebx, 0xab3496a1
lea ecx, [eax - 1]
imul ecx, eax
mov eax, 0xab3496a1
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, esi
cmp dword [0x4af3dc], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, esi
jmp 0x423d10
mov edx, dword [0x4af3e0]
mov ecx, dword [0x4af3dc]
mov esi, 0xab3496a1
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xcfd6b13a
cmovne esi, ebx
test edx, eax
mov eax, esi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, esi
jmp 0x423d10
lea ecx, [esp + 0xa8]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [esp + 0x18]
mov eax, 0x19c5c089
jmp 0x423d10
mov eax, 0x1d51260f
jmp 0x423d10
mov eax, dword [esp + 0x30]
mov dword [esp + 0xac], ecx
movsx esi, byte [ebp + 0x18]
mov edx, dword [ebp + 8]
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xa8]
mov eax, dword [esp + 0xac]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x24]
vmovsd xmm0, qword [esp + 0x80]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x10], esi
mov dword [esp + 4], edx
mov dword [esp], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x14], ecx
call fcn.004296a0
mov edi, dword [ebp + 0x14]
mov eax, 0xe5982db4
nop word cs:[eax + eax]
cmp eax, 0xfbeba97
je 0x4243cf
cmp eax, 0xe5982db4
jne 0x423eb0
lea ecx, [esp + 0xe0]
call fcn.004096d0
mov eax, dword [0x4af450]
mov edx, 0x1f072494
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x4af44c], 0xa
setl cl
or cl, al
mov eax, 0xe155e4a7
mov ecx, 0x5e2edcb5
cmovne eax, ecx
mov ecx, 0xe155e4a7
cmovne ecx, edx
mov edx, 0xc5022d28
nop
cmp edx, 0xe155e4a6
jle 0x423f40
cmp edx, 0xe155e4a7
je 0x423f54
cmp edx, 0x5e2edcb5
je 0x423f5b
cmp edx, 0x1f072494
jne 0x423f10
mov edx, eax
jmp 0x423f10
cmp edx, 0xb65abd80
je 0x423f62
cmp edx, 0xc5022d28
jne 0x423f10
mov edx, ecx
jmp 0x423f10
mov edx, 0x1f072494
jmp 0x423f10
mov edx, 0xb65abd80
jmp 0x423f10
mov eax, 0xb6c5bc6e
nop word [eax + eax]
cmp eax, 0xb6c5bc6e
je 0x423f80
cmp eax, 0xca3adc25
jne 0x423f70
jmp 0x423f87
mov eax, 0xca3adc25
jmp 0x423f70
lea eax, [esp + 0xe0]
mov dword [esp + 0xa8], eax
mov ecx, dword [esp + 0xa8]
call fcn.0040ab80
mov eax, 0xfbeba97
jmp 0x423eb0
mov eax, 0xddda2bad
jmp 0x422b70
mov dword [esp + 0xac], ecx
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], ecx
mov eax, 0x3c43c6fc
jmp 0x422b70
mov eax, 0xf9f92661
jmp 0x422b70
mov dword [esp + 0xa8], edx
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0x70]
sub ecx, dword [eax]
mov eax, 0x34e50a47
mov dword [esp + 0x28], ecx
jmp 0x422b70
mov eax, dword [0x4aefc8]
mov ebx, 0x2c9d0d4
mov esi, 0x3043b5e3
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x3043b5e3
sete cl
cmove eax, ebx
cmp dword [0x4aefc4], 0xa
setl dl
cmovge eax, esi
xor dl, cl
cmovne eax, ebx
jmp 0x422b70
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ecx
mov esi, 0x809569cc
mov eax, dword [esp + 0xa8]
mov eax, dword [esp + 0xac]
mov ecx, dword [0x4aeff8]
lea eax, [esp + 0xe0]
mov dword [esp + 0x18], eax
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete cl
cmp dword [0x4aeff4], 0xa
setge dl
setl ch
or dl, al
xor ch, cl
mov eax, 0x78b19bb1
not dl
or dl, ch
mov ecx, 0x32b2cab9
test dl, 1
mov edx, 0xa9cf5c0f
cmovne eax, ecx
mov ecx, 0x78b19bb1
cmovne ecx, edx
nop dword [eax]
cmp esi, 0xa9cf5c0e
jle 0x4240f0
cmp esi, 0x78b19bb1
je 0x424105
cmp esi, 0x32b2cab9
je 0x424110
cmp esi, 0xa9cf5c0f
jne 0x4240c0
mov edx, dword [esp + 0x18]
mov esi, eax
add edx, 0x10
jmp 0x4240c0
cmp esi, 0x809569cc
je 0x424117
cmp esi, 0x88dcb8bb
jne 0x4240c0
jmp 0x4243d9
mov esi, dword [esp + 0x18]
mov esi, 0xa9cf5c0f
jmp 0x4240c0
mov esi, 0x88dcb8bb
jmp 0x4240c0
mov esi, ecx
jmp 0x4240c0
mov dword [esp + 0xac], ecx
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xac]
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x70], eax
mov eax, 0xe263634d
jmp 0x422b70
mov dword [esp + 0xa8], edx
mov edi, 0x566d598b
mov eax, dword [esp + 0xa8]
mov ecx, dword [0x4af140]
mov eax, dword [eax]
mov dword [esp + 0x78], eax
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, dword [0x4af13c]
test al, 1
sete byte [esp + 0x22]
cmp ecx, 0xa
setge cl
setl byte [esp + 0x23]
mov edx, ecx
or cl, al
xor dl, al
not cl
mov eax, 0x536b75f6
or cl, dl
mov edx, 0x7f527be5
test cl, 1
mov ecx, 0x5c9aaf39
cmovne ecx, eax
mov eax, 0x66bc5938
mov dword [esp + 0x34], ecx
mov ecx, 0x5c9aaf39
cmovne ecx, eax
mov eax, 0xa8b75cdd
cmovne edx, eax
jmp 0x4241d0
mov edi, 0x8e909c8
nop word cs:[eax + eax]
mov ebx, edi
cmp edi, 0x566d598a
jg 0x424210
cmp ebx, 0x8e909c7
jle 0x424240
cmp ebx, 0x536b75f6
je 0x4241bc
mov edi, ecx
cmp ebx, 0x5626c73f
je 0x4241d0
mov edi, ebx
cmp ebx, 0x8e909c8
jne 0x4241d0
jmp 0x4243f1
cmp ebx, 0x66bc5937
jg 0x424270
cmp ebx, 0x566d598b
je 0x424290
mov edi, ebx
cmp ebx, 0x5c9aaf39
jne 0x4241d0
mov eax, dword [esp + 0x18]
mov edi, 0x66bc5938
jmp 0x4241d0
cmp ebx, 0xa8b75cdd
je 0x4242bd
mov edi, ebx
cmp ebx, 0xeb6e8c62
jne 0x4241d0
lea eax, [esp + 0xe0]
mov edi, edx
mov dword [esp + 0x18], eax
jmp 0x4241d0
cmp ebx, 0x66bc5938
je 0x4242c7
mov edi, ebx
cmp ebx, 0x7f527be5
jne 0x4241d0
mov edi, 0xeb6e8c62
jmp 0x4241d0
movzx eax, byte [esp + 0x22]
mov bh, byte [esp + 0x23]
mov edi, 0xeb6e8c62
mov esi, 0xeb6e8c62
mov bl, al
xor bl, bh
jne 0x4242ae
mov esi, 0x7f527be5
test bh, bh
cmove edi, esi
test al, al
cmove edi, esi
jmp 0x4241d0
mov edi, 0x5626c73f
jmp 0x4241d0
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x34]
mov dword [esp + 0x30], eax
jmp 0x4241d0
mov dword [esp + 0xac], ecx
mov dword [esp + 0xa8], eax
mov esi, 0x809569cc
mov eax, dword [esp + 0xac]
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x68], eax
lea eax, [esp + 0xe0]
mov dword [esp + 0x18], eax
mov eax, dword [0x4aeff8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete cl
cmp dword [0x4aeff4], 0xa
setge dl
setl ah
or dl, al
xor ah, cl
mov ecx, 0x32b2cab9
xor dl, 1
or dl, ah
mov eax, 0x78b19bb1
mov edx, 0xa9cf5c0f
cmovne eax, ecx
mov ecx, 0x78b19bb1
cmovne ecx, edx
cmp esi, 0xa9cf5c0e
jle 0x424380
cmp esi, 0x78b19bb1
je 0x424395
cmp esi, 0x32b2cab9
je 0x4243a0
cmp esi, 0xa9cf5c0f
jne 0x424350
mov edx, dword [esp + 0x18]
mov esi, eax
add edx, 0x10
jmp 0x424350
cmp esi, 0x809569cc
je 0x4243a7
cmp esi, 0x88dcb8bb
jne 0x424350
jmp 0x424429
mov esi, dword [esp + 0x18]
mov esi, 0xa9cf5c0f
jmp 0x424350
mov esi, 0x88dcb8bb
jmp 0x424350
mov esi, ecx
jmp 0x424350
lea esi, [esp + 0xa8]
mov dword [esp], esi
call fcn.00428590
mov ecx, esi
mov dword [esp + 0x64], eax
call fcn.0041cad0
mov eax, 0x9526af3b
jmp 0x422b70
mov eax, 0xafc924cd
jmp 0x422b70
mov dword [esp + 0xa8], edx
mov eax, dword [esp + 0xa8]
mov eax, 0x93d63d14
jmp 0x422b70
mov eax, dword [esp + 0x30]
mov dword [esp + 0xa8], eax
mov ecx, dword [esp + 0xa8]
call fcn.004103a0
mov dword [esp + 0x7c], eax
lea eax, [ebp + 0xc]
mov edi, dword [ebp + 0x14]
vmovsd xmm0, qword [eax]
mov eax, 0x7f55498a
vmovsd qword [esp + 0x88], xmm0
jmp 0x422b70
mov dword [esp + 0xa8], edx
mov esi, 0x1fae708d
mov ebx, 0x277a9183
mov eax, dword [esp + 0xa8]
mov eax, dword [eax]
mov dword [esp + 0x6c], eax
mov eax, dword [0x4aefc8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x277a9183
jmp 0x422b54
cmp eax, 0xafc924cd
jne 0x422b70
mov ecx, dword [esp + 0xf8]
xor ecx, ebp
call fcn.0043c4a0
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x18