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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x12c
mov eax, dword [0x1006b040]
xor eax, esp
mov dword [esp + 0x128], eax
mov eax, dword [edx + 0x10]
mov dword [esp + 0xb8], eax
lea eax, [esp + 0x124]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
lea eax, [esp + 0x121]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
lea eax, [ecx + 0x14]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], ecx
mov eax, dword [esp + 0x50]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0x4c]
mov dword [eax], 0xf
mov dword [esp + 0xfc], edx
mov dword [esp + 0xf8], edx
lea eax, [edx + 0x14]
mov dword [esp + 0x100], eax
cmp dword [esp + 0xb8], 0
sete byte [esp + 0x32]
mov dword [esp + 0x38], ecx
lea eax, [ecx + 0x10]
mov dword [esp + 0x98], eax
mov eax, 0x814839a3
mov ecx, 0xd7a99d04
mov dword [esp + 0x20], edx
mov dword [esp + 0x28], edx
mov dword [esp + 0x34], edx
jmp 0x10053220
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0x9c]
mov byte [eax], cl
mov edi, ecx
movzx eax, byte [esp + 0x13]
shl al, 2
mov dh, byte [esp + 0x1c]
shr dh, 4
mov cl, dh
and cl, 3
movzx esi, cl
add cl, cl
mov ch, dh
sub ch, cl
mov bl, dh
xor bl, 0xfc
add bl, ch
mov ch, dh
not ch
mov cl, ch
or cl, 0xfc
sub bl, cl
mov bh, dh
and bh, 0xc
mov ah, bh
not ah
add ah, bl
mov cl, ah
and cl, dh
add cl, ah
sub bh, bl
and bh, dh
add bh, cl
or ah, dh
sub ah, bh
mov cl, 3
sub cl, dh
and cl, 0xfc
add ch, ch
or ch, 0xf8
add ch, cl
lea ebx, [esi + esi*2]
neg ebx
sub bl, ch
mov dl, dh
xor dl, 0x4f
add dl, dh
add dl, dh
or dh, 0xfc
add dh, bl
add ah, ah
add dh, 6
mov cl, ah
add cl, dh
mov ch, ah
xor ch, dh
sub cl, ch
mov ch, ah
or ch, dh
add ch, cl
not ah
add ch, ah
or ah, dh
sub ah, ch
mov cl, ah
not cl
mov ch, 0xce
sub ch, dl
add dl, 0xb1
mov dh, dl
or dh, 0xb0
mov ebx, edx
xor bl, 0xb0
add bl, dh
or ch, 0xb0
add ch, bl
and dl, 0xb0
add dl, ch
add dl, 0x51
mov ch, dl
and ch, 0x4c
mov dh, dl
add dh, dl
xor dh, 0x66
sub dh, ch
and dl, 0xb3
add dl, dh
mov ch, 0xb2
sub ch, dl
add dl, 0x4d
mov dh, dl
not dh
mov bl, ch
and bl, 0x5f
mov bh, ch
and bh, 0xa0
sub bl, bh
mov bh, ch
xor bh, 0x5f
add bh, bl
or ch, 0xa0
add ch, bh
add ch, 1
mov ebx, edx
add bl, dl
and bl, 0x40
and dh, 0x5f
add dh, bl
xor dl, 0xa0
add dl, dh
add dl, 1
mov dh, ch
not dh
and dh, dl
mov bl, ch
or bl, dl
add bl, dh
not dl
or dl, ch
add dl, bl
add dl, 1
xor dl, 0x5f
mov ch, 0xfe
sub ch, dl
add dl, 1
mov dh, cl
and dh, 0x91
add dh, ah
and cl, 0x6e
movzx esi, cl
lea ebx, [esi + esi*2]
add bl, dh
mov cl, ah
xor cl, 0x91
add cl, bl
add ah, ah
add ah, cl
add ah, 3
or ch, ah
not ah
or ah, dl
add dl, dl
add ch, dl
sub ch, ah
mov cl, ch
and cl, 0x91
mov edx, ecx
xor dl, 0x91
add dl, ch
add dl, cl
movzx esi, dl
lea ecx, [esi + esi*8]
lea edx, [ecx + ecx*2]
add edx, esi
add edx, esi
mov ecx, edx
not cl
imul ebx, esi, 0x3a
and cl, 0x2a
add cl, bl
or dl, 0x2a
sub cl, dl
mov dl, 0x89
sub dl, cl
add cl, 0x76
and dl, 0xd5
add dl, cl
and cl, 0xd5
add cl, dl
movzx ecx, cl
imul ecx, ecx, 0x35
mov dl, 2
sub dl, cl
add cl, 0xfd
and dl, 0x7c
add dl, cl
and cl, 0x7c
add cl, dl
mov edx, ecx
not dl
mov dh, cl
add dh, 1
mov ah, dh
add ah, dh
mov byte [esp + 0x24], ah
sub dh, ah
mov ebx, eax
not bl
or dh, bl
add dh, al
add dh, 0x92
mov bh, dh
and bh, 0x6d
or dh, 0x6f
add dh, bh
and bl, cl
mov ah, al
mov byte [esp + 4], al
add bl, al
mov al, cl
xor al, ah
sub bl, al
and ah, dl
mov bh, al
sub bh, ah
add bh, al
or dl, byte [esp + 4]
add dl, bh
add dl, 1
or dl, bl
add dl, dh
sub cl, byte [esp + 0x24]
mov ah, 0xfe
sub ah, cl
add cl, 1
mov al, cl
movzx ebx, byte [esp + 4]
and al, bl
mov dh, ah
and dh, bl
add dh, al
xor cl, bl
sub cl, dh
or ah, bl
add ah, cl
mov al, dl
add al, dl
add al, ah
sub al, dl
mov ecx, eax
add cl, 0xdc
mov edx, ecx
xor dl, 0xda
add dl, al
add cl, cl
or cl, 0x4a
add cl, dl
sub cl, al
movzx eax, cl
lea ecx, [eax + eax*4]
lea eax, [eax + ecx*4]
mov ecx, eax
add cl, 0x15
mov edx, ecx
and dl, 0x82
add dl, al
or cl, 0x7d
sub cl, dl
movzx eax, cl
imul eax, eax, 0xffffffa7
add al, 0xf4
xor al, 0x80
movzx ecx, al
lea eax, [ecx + ecx*2]
shl eax, 3
sub eax, ecx
xor al, 0x80
movzx eax, al
imul eax, eax, 0xffffffc3
add al, 0x30
mov ecx, eax
add cl, al
or cl, 0xac
xor al, 0x29
add al, cl
add al, 1
mov byte [esp + 0x10], al
mov dh, byte [esp + 0x1c]
mov al, dh
shl al, 4
movzx ebx, byte [esp + 0x60]
mov dl, bl
shr dl, 2
and dl, 0xf
mov ecx, edx
not cl
movzx ecx, cl
lea ecx, [ecx + ecx*2]
neg ecx
add dl, dl
sub cl, dl
movzx ecx, cl
imul ecx, ecx, 0xffffffab
mov dl, 0x79
sub dl, cl
add cl, 0x86
mov ah, cl
and ah, 0x5e
xor cl, 0x5e
add cl, ah
or dl, 0xa1
sub cl, dl
movzx ecx, cl
lea ecx, [ecx + ecx*2]
neg ecx
mov dl, dh
shl dl, 5
not dl
add dl, al
add cl, 0xb1
and cl, dl
mov ah, cl
not ah
add ah, dl
mov dh, dl
sub dh, cl
add ah, dh
add ah, dh
sub cl, dl
add cl, cl
add cl, ah
add cl, 1
mov edx, ecx
add dl, cl
not cl
mov ah, cl
or ah, 0x94
add ah, dl
or cl, 0x6b
add cl, ah
add cl, al
movzx eax, cl
imul eax, eax, 0xffffffb9
mov ecx, eax
add cl, 0x72
mov edx, ecx
xor dl, 0xd8
add dl, al
xor cl, 0x27
add cl, dl
mov eax, ecx
add al, 0x4b
mov edx, eax
xor dl, 0x83
add dl, cl
mov ecx, eax
not cl
and cl, 0x7c
add cl, dl
and al, 0x83
add al, cl
add al, 0xcf
mov ecx, eax
not cl
mov edx, eax
and dl, 0x27
add dl, al
add al, al
and al, 0xb0
mov ah, al
xor ah, 0xb0
add ah, dl
and cl, 0x27
add cl, ah
add cl, al
movzx eax, cl
imul eax, eax, 0xffffff89
add al, 0x59
mov ecx, eax
and cl, 0xe4
add cl, al
mov edx, eax
not dl
add dl, cl
and al, 0x1b
add al, dl
add al, 0xe6
mov byte [esp + 0x11], al
shl bl, 6
mov byte [esp + 4], bl
mov al, 7
sub al, bl
movzx eax, al
imul ebx, eax, 0x57
mov al, 0x60
sub al, bl
add bl, 0x9f
mov edx, edi
mov ch, dl
not ch
mov cl, bl
and cl, dl
mov ah, bl
xor ah, ch
sub ah, cl
mov cl, bl
or cl, ch
mov byte [esp + 0x24], ch
add cl, ah
xor bl, dl
add bl, cl
or al, ch
not bl
add bl, al
movzx eax, byte [esp + 4]
mov ah, al
not ah
movzx esi, ah
mov cl, ah
mov byte [esp + 8], ah
mov byte [esp + 0x30], ah
mov byte [esp + 0x31], ah
mov ch, ah
or ah, 0x5e
mov edx, eax
xor dl, 0x5e
add dl, ah
mov ah, al
and ah, 0x80
add dl, 1
or dl, ah
mov byte [esp + 0x2f], dl
add ah, al
or cl, 0x5a
sub ah, cl
add ah, bl
add ah, 0x59
mov bh, ah
and bh, 0x5a
add bh, ah
mov bl, ah
xor bl, 0x5a
add bl, bh
or ah, 0x5a
sub bl, ah
add bl, 0xa6
mov eax, edi
mov ah, al
add ah, al
neg ah
mov bh, bl
and bh, ah
mov cl, bh
add cl, bl
mov edx, edi
mov al, dl
shl al, 2
add al, cl
xor ah, bl
add ah, al
not bl
add bl, ah
add bl, bh
add bl, 1
mov ah, byte [esp + 0x24]
mov al, byte [esp + 8]
and al, ah
mov cl, byte [esp + 0x30]
add cl, cl
sub al, cl
mov cl, al
mov al, bl
not al
movzx edx, byte [esp + 0x31]
or dl, ah
add dl, cl
mov cl, dl
mov edx, edi
or ch, dl
add ch, cl
movzx edx, byte [esp + 4]
mov cl, dl
sub cl, ch
sub ch, dl
add ch, ch
add ch, cl
movzx ecx, ch
lea ecx, [ecx + ecx*2]
and al, 0x2e
add al, bl
and bl, 0x2e
add bl, al
add bl, cl
mov al, bl
and al, 0x2e
add al, bl
mov ecx, ebx
xor cl, 0x2e
add cl, al
or bl, 0x2e
sub cl, bl
mov byte [esp + 8], cl
add ah, ah
mov ebx, edi
add ah, bl
add ah, 1
and ah, 0x5e
mov al, bl
and al, 0xa1
mov ecx, eax
xor cl, 0xa1
add cl, al
mov al, bl
xor al, 0x5e
add al, cl
mov ch, bl
and ch, 0x5e
add ch, al
add ch, 1
mov al, ch
not al
and al, ah
add al, al
mov cl, ah
or cl, ch
mov dh, ah
not dh
or dh, ch
and ch, ah
sub ah, al
add cl, ah
sub cl, dh
not ch
add ch, cl
movzx edx, byte [esp + 0x2f]
mov eax, edx
not al
and al, ch
add al, dl
mov cl, dl
xor cl, ch
add cl, al
or ch, dl
sub cl, ch
mov eax, ecx
not al
add al, al
or al, 0x6a
sub al, cl
mov edx, ecx
and dl, 0xca
movzx edx, dl
lea edx, [edx + edx*2]
add dl, al
or cl, 0x35
sub cl, dl
add cl, 0xca
mov ah, byte [esp + 8]
mov al, ah
add al, 8
mov edx, ecx
not dl
and dl, al
add dl, al
add dl, cl
mov ch, al
xor ch, cl
add ch, ch
sub dl, ch
mov ch, al
or ch, cl
add ch, ch
add ch, dl
sub ch, ah
and al, cl
not al
add al, ch
lea ecx, [esi + esi*2]
movzx edx, byte [esp + 4]
add cl, dl
add cl, 1
not cl
sub cl, dl
add cl, cl
add cl, al
movzx eax, cl
imul eax, eax, 0xffffffbb
add al, 0x71
mov ecx, eax
not cl
mov edx, ecx
and dl, 0x1e
add dl, al
xor al, 0xe1
add al, dl
or cl, 0x1e
sub al, cl
add al, 0xe2
mov ecx, eax
xor cl, 0x96
add cl, al
mov edx, eax
or dl, 0x69
add dl, cl
mov ecx, eax
not cl
add cl, dl
and al, 0x96
add al, cl
add al, 0x98
mov ecx, eax
and cl, 0x1e
xor al, 0x1e
add al, cl
add al, cl
movzx eax, al
imul eax, eax, 0x73
mov ecx, eax
not cl
and cl, 0x62
add cl, al
or al, 0x9d
add al, cl
add al, 0x9f
mov byte [esp + 0x12], al
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov eax, dword [eax]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x84]
cmp eax, dword [esp + 0xd0]
mov eax, 0x9d5c3768
mov ecx, 0xb99d5692
cmovb eax, ecx
mov ecx, 0xe2902e3d
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp ecx, 0xfb9c0a93
jg 0x10053290
cmp ecx, 0xbd7e7279
jg 0x10053a50
cmp ecx, 0x9f247cf8
jle 0x10053b23
cmp ecx, 0xaf03852d
jg 0x10053ce5
cmp ecx, 0xa2e684d9
jle 0x100540b5
cmp ecx, 0xa662490c
jg 0x1005464d
cmp ecx, 0xa2e684da
je 0x10054e04
cmp ecx, 0xa622e93c
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x92b4a536
mov ecx, 0x35e61c54
mov edx, 0xf644bea5
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0x3e299d4b
jle 0x10053ac0
cmp ecx, 0x61115169
jle 0x10053b98
cmp ecx, 0x6ed87487
jg 0x10053d30
cmp ecx, 0x62748521
jle 0x100540f4
cmp ecx, 0x6a538c09
jg 0x10054816
cmp ecx, 0x62748522
je 0x10054e1f
cmp ecx, 0x6948a7be
jne 0x10053220
mov eax, dword [esp + 0x3c]
movsx eax, byte [eax]
push dword [esp + 0x54]
push eax
push dword [esp + 0x60]
call fcn.10059210
add esp, 0xc
mov dword [esp + 0x28], eax
mov esi, eax
not esi
mov ecx, dword [esp + 0x6c]
lea edi, [eax + eax*2]
sub edi, eax
sub edi, eax
mov ebx, eax
and ebx, 0xd26bf8d9
add ebx, eax
and esi, 0x2d940726
add ebx, esi
mov edx, eax
or edx, 0x2d940726
sub ebx, edx
or esi, ebx
and ebx, 0xd26bf8d9
mov edx, ebx
xor edx, 0xd26bf8d9
xor esi, 0xd26bf8d9
add esi, edx
mov ebp, 0xd26bf8d8
sub ebp, esi
sub ebp, ebx
mov eax, ecx
not eax
add esi, ebx
add esi, 0x2d940727
mov ebx, ecx
or ebx, esi
and esi, eax
or ebp, eax
add ebp, esi
add ebp, ecx
sub ebp, ebx
mov esi, ebp
not esi
lea ebp, [ebp + esi*2]
mov ebx, edi
not ebx
or ebx, ebp
add ebx, edi
add ebx, ecx
mov esi, edi
and esi, ebp
add esi, edi
add esi, ebp
sub esi, ebx
mov edx, dword [esp + 0x28]
mov edi, edx
and edi, 0x736b1e1f
mov ebx, edi
xor ebx, 0x736b1e1f
mov ebp, edx
and ebp, 0x8c94e1e0
or ebp, ebx
xor ebp, 0x8c94e1e0
add ebp, ebx
mov ebx, ecx
xor ebx, edx
add ebx, ecx
add edi, ebp
add edi, 0x8c94e1e1
or edi, ecx
or ecx, edx
sub ebx, ecx
and eax, edx
or eax, ebx
mov ecx, eax
not ecx
mov ebx, ecx
or ebx, 0xdf71660e
mov ebp, eax
xor ebp, 0xdf71660e
add ebx, ebp
add ebx, 1
mov ebp, eax
and ebp, 0x208e99f1
mov edx, eax
or edx, 0xdf71660e
add edx, ebp
xor eax, 0x208e99f1
add eax, edx
or ecx, 0x208e99f1
add eax, ecx
add eax, 2
or eax, ebx
xor eax, 0x208e99f1
lea ecx, [esi + 0x5d9103a0]
and ecx, eax
add ecx, eax
mov edx, 0xa26efc5f
sub edx, esi
or edx, eax
not edx
lea eax, [ecx + edx]
add ecx, edx
add ecx, 0xa26efc60
mov edx, 0x9f
sub edx, eax
mov esi, edx
and esi, edi
add eax, esi
add eax, 0xa26efc60
xor ecx, edi
not ecx
add ecx, eax
or edx, edi
add edx, edi
sub ecx, edx
cmp dword [esp + 0x28], 1
sbb edx, edx
or dl, cl
mov dword [esp + 0x28], edx
mov eax, dword [esp + 0x3c]
mov byte [eax], dl
mov eax, dword [esp + 0x78]
movsx eax, byte [eax]
push dword [esp + 0x54]
push eax
push dword [esp + 0x60]
call fcn.10059210
add esp, 0xc
mov edi, dword [esp + 0x6c]
lea edx, [eax + 0x7f0fe709]
mov ecx, edx
and ecx, 0x80f018f6
mov esi, edx
or esi, 0x7f0fe709
add esi, ecx
xor edx, 0x80f018f6
lea ebp, [esi + edx]
mov dword [esp + 4], ebp
mov ebx, edi
neg ebx
add edx, esi
add edx, 0x7ffe1f2b
mov ecx, edx
and ecx, ebx
sub ecx, edi
mov esi, edx
xor esi, ebx
add esi, ecx
or ebx, edx
not ebx
add ebx, esi
mov edx, 0x7f0fe707
sub edx, ebp
sub edx, ebx
mov dword [esp + 0x60], edx
mov ecx, eax
mov edx, eax
not edx
mov eax, edi
and eax, edx
add eax, edx
mov esi, edx
mov dword [esp + 0x1c], edx
mov edx, edi
and edx, ecx
mov dword [esp + 0x34], edx
mov ebp, ecx
mov dword [esp + 0x20], ecx
add eax, edx
mov ecx, edi
or ecx, esi
sub eax, ecx
mov esi, edi
not esi
mov ecx, ebp
and ecx, esi
or ecx, eax
mov ebp, ecx
not ebp
mov eax, ebp
and eax, 0x1adc9275
add ebp, ebp
or ebp, 0x35b924ea
add ebp, eax
mov eax, ecx
and eax, 0xe5236d8a
lea edx, [eax + eax*2]
add edx, ebp
lea ebp, [ecx + ecx]
or ebp, 0xca46db14
sub eax, ebp
mov ebp, ecx
xor ebp, 0xe5236d8a
add ebp, eax
lea eax, [ecx + ebp]
add eax, 0xe5236d8a
or ecx, 0x1adc9275
sub edx, ecx
add edx, 0x1adc9277
or eax, edx
mov ecx, eax
and ecx, 0x1adc9275
mov edx, eax
xor edx, 0x1adc9275
add edx, ecx
lea ecx, [eax + eax]
or ecx, 0xca46db14
add ecx, edx
not eax
add ecx, eax
or eax, 0x1adc9275
lea edx, [ecx + eax]
add eax, ecx
add eax, 3
mov ecx, dword [esp + 4]
add ebx, ecx
add ebx, 0x80f018f8
mov ebp, dword [esp + 0x60]
and ebp, eax
or ebx, eax
lea eax, [edx + ebp*2]
add eax, 3
sub ebx, eax
lea ecx, [ebx + ebp]
lea eax, [ebx + ebp]
add eax, 1
mov edx, esi
and edx, 0x9d01d32f
mov ebx, edi
xor ebx, 0x9d01d32f
add ebx, edx
or esi, 0x9d01d32f
add esi, ebx
add esi, edi
mov edx, edi
or edx, 0x9d01d32f
sub esi, edx
add esi, 1
and edi, 0x62fe2cd0
or edi, esi
mov edx, edi
xor edx, 0x62fe2cd0
or esi, 0x62fe2cd0
add esi, edx
mov edx, edi
not edx
add edx, esi
and edi, 0x62fe2cd0
mov esi, 0x62fe2cce
sub esi, edx
sub esi, edi
add edx, edi
add edx, 0x9d01d331
mov edi, esi
mov ebp, dword [esp + 0x1c]
and edi, ebp
mov ebx, edx
and ebx, ebp
sub edi, ebx
xor esi, ebp
add esi, edi
mov edi, eax
and edi, 0x8634cd78
add ecx, edi
add ecx, 1
mov edi, eax
not edi
add esi, edx
mov ebx, dword [esp + 0x20]
or edx, ebx
and edi, 0x79cb3287
add edi, ecx
mov ecx, esi
not ecx
add ecx, edx
xor eax, 0x8634cd78
add eax, edi
add eax, 0x8634cd79
sub esi, edx
mov edx, eax
and edx, esi
lea ecx, [edx + ecx*2]
or esi, eax
lea eax, [ecx + esi]
lea edx, [ebx + ebx*2]
not edx
lea edx, [edx + ebx*2]
add esi, ecx
add esi, 0x7976ee1
mov ecx, 0xf868911e
sub ecx, eax
and ecx, edx
add eax, ecx
add eax, 0x7976ee1
and esi, edx
add esi, eax
mov ecx, esi
not ecx
mov eax, ecx
or eax, 0x7233c3a8
lea esi, [eax + esi*2]
or ecx, 0x8dcc3c57
mov eax, 0x5126cdbc
sub eax, esi
sub eax, ecx
mov ebp, dword [esp + 0x34]
mov edx, ebp
not edx
lea edx, [edx*2]
add edx, ebp
lea edi, [edx + ebp*2]
lea edx, [edx + ebp*2 + 2]
not edx
lea edx, [edi + edx*2 + 2]
add ecx, esi
add ecx, 0xaed93243
mov esi, ecx
mov edi, ecx
and edi, edx
and eax, edx
xor ecx, edx
not edx
and esi, edx
lea esi, [edi + esi*2]
add esi, edx
add eax, esi
sub eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xc35a9167
add edx, eax
xor eax, 0x3ca56e98
add eax, edx
or ecx, 0xc35a9167
sub eax, ecx
imul eax, eax, 0x67dc3075
lea ecx, [eax - 0x4d8ed5a8]
and ecx, 0x4a33d91f
add eax, 0x32712a58
or eax, 0x4a33d91f
add eax, ecx
imul eax, eax, 0xd75c1fdd
mov ecx, eax
and ecx, 0x54
mov edx, eax
and edx, 0xab
sub edx, ecx
add edx, eax
xor eax, 0xab
add eax, edx
add al, 1
cmp ebx, 1
sbb ecx, ecx
or cl, al
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x78]
mov byte [eax], cl
mov eax, dword [esp + 0x7c]
movsx eax, byte [eax]
push dword [esp + 0x54]
push eax
push dword [esp + 0x60]
call fcn.10059210
add esp, 0xc
mov edx, dword [esp + 0x6c]
mov ecx, edx
not ecx
mov dword [esp + 0x1c], ecx
mov edi, eax
and edi, ecx
mov ebp, eax
neg ebp
mov esi, edi
not esi
mov ebx, esi
and ebx, ebp
add ebx, edi
xor edi, ebp
not edi
add edi, ebx
mov ebx, eax
not ebx
or esi, ebp
add esi, eax
add edi, edx
sub esi, edi
and ebx, 0x82a7c76
mov edi, eax
and edi, 0xf7d58389
mov ebp, eax
mov ecx, eax
mov dword [esp + 0x20], eax
xor ebp, 0xf7d58389
lea eax, [edi*2]
add eax, ebp
or ecx, 0xf7d58389
sub eax, ecx
or eax, ebx
mov ecx, dword [esp + 0x1c]
mov ebx, ecx
or ebx, 0x82a7c76
mov ebp, edx
xor ebp, 0x82a7c76
add ebp, ebx
add ebp, 1
mov ebx, edx
and ebx, 0xf7d58389
or ebx, ebp
mov ebp, ebx
not ebp
and ebp, eax
mov edi, eax
xor edi, ebx
add edi, edi
sub edi, ebp
or ebx, eax
not ebx
add ebx, edi
lea ebp, [eax + ebx]
lea edi, [eax + ebx]
add edi, 1
mov eax, esi
not eax
and eax, 0xda66e5ae
add eax, esi
mov ebx, esi
xor ebx, 0x25991a51
add ebx, eax
and esi, 0x25991a51
lea eax, [ebx + esi]
add ebx, esi
add ebx, 0x25991a53
mov esi, edi
not esi
and esi, ebx
add esi, esi
add eax, eax
add eax, 0x4b3234a6
sub eax, esi
add eax, ebp
add eax, 1
mov esi, ebx
not esi
or esi, edi
sub eax, esi
and ebx, edi
mov esi, ebx
not esi
add esi, eax
sub ebx, eax
and ebx, 0xda66e5ae
lea eax, [ebx + esi*2]
or esi, 0xda66e5ae
sub esi, eax
mov eax, ecx
add eax, ecx
or eax, 0xc075a5d2
sub eax, edx
mov ecx, eax
mov eax, edx
and eax, 0x1fc52d16
lea eax, [eax + eax*2]
add eax, ecx
mov edi, edx
or edi, 0xe03ad2e9
sub edi, eax
lea ecx, [esi + edi]
lea eax, [esi + edi]
add eax, 0x455e4768
mov edi, dword [esp + 0x20]
and edx, edi
mov esi, edx
not esi
or edx, eax
not eax
and eax, esi
add eax, ecx
add eax, 0x455e4768
add eax, esi
add edx, eax
mov eax, 0x6dd8ef22
sub eax, edx
mov ecx, eax
and ecx, 0xe6ac2a1d
add ecx, eax
or eax, 0x1953d5e2
sub ecx, eax
mov eax, ecx
not eax
mov edx, eax
and edx, 0x922710dd
add edx, ecx
and eax, 0x6dd8ef22
lea eax, [eax + eax*2]
add eax, edx
mov edx, ecx
xor edx, 0x922710dd
add edx, eax
lea eax, [edx + ecx*2]
add eax, 0x244e21bd
mov ecx, eax
or ecx, 0x1d
not eax
or eax, 0xe2
sub ecx, eax
add cl, 0xc4
cmp edi, 1
sbb edx, edx
or dl, cl
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x7c]
mov byte [eax], dl
mov eax, dword [esp + 0xc0]
movsx eax, byte [eax]
push dword [esp + 0x54]
push eax
push dword [esp + 0x60]
call fcn.10059210
add esp, 0xc
mov ecx, eax
mov eax, dword [esp + 0x6c]
mov edi, eax
and edi, ecx
mov esi, edi
not esi
mov ebx, esi
and ebx, 0x5ee6923b
lea edx, [edi + edi]
mov ebp, edx
and ebp, 0x4232db88
add ebp, ebx
add ebp, edi
mov edi, esi
and edi, 0xa1196dc4
add edi, ebp
add edi, esi
and edx, 0xbdcd2476
add edx, edi
lea edi, [edx + ecx]
mov esi, 0xfffffffe
sub esi, edi
add edx, ecx
add edx, 1
mov ebx, edx
mov dword [esp + 0x1c], eax
and ebx, eax
sub ebx, edi
add ebx, eax
xor esi, eax
not esi
add esi, ebx
or edx, eax
sub edx, esi
mov edi, ecx
not edi
mov esi, edi
and esi, 0x17daa21c
mov ebx, ecx
and ebx, 0xe8255de3
or ebx, esi
xor ebx, 0xe8255de3
mov ebp, ecx
or ebp, 0xe8255de3
add ebp, esi
add ebp, ebx
lea esi, [edx + ebp]
add edx, ebp
add edx, 3
mov ebp, ecx
and ebp, 0xa1a2c8e2
mov eax, ecx
and eax, 0x5e5d371d
mov ebx, ebp
not ebp
add ebp, eax
xor ebx, 0xa1a2c8e2
or edi, 0x5e5d371d
sub ebp, edi
or ebx, ebp
and ebp, 0x5e5d371d
lea edi, [ebx + ebx]
xor edi, 0xbcba6e3a
add edi, ebp
or ebx, 0x5e5d371d
not edi
add edi, ebx
mov ebx, dword [esp + 0x1c]
mov eax, ebx
not eax
lea eax, [ebx + eax*2]
add eax, 1
and eax, edi
mov edi, edx
or edi, eax
add esi, edi
add esi, 3
not edx
or edx, eax
lea eax, [esi + edx]
add edx, esi
add edx, 0x9df5286f
xor edx, 0x7a20a140
add edx, eax
lea esi, [eax + eax]
add esi, 0x3bea50de
or esi, 0xbbebd7e
add esi, edx
sub esi, eax
add esi, 0xdc2b78d5
mov dword [esp + 0x9c], esi
test ecx, ecx
mov eax, 0x3903130
mov ecx, 0xe86cf459
cmove eax, ecx
mov ecx, 0xe2902e3d
jmp 0x100541ab
cmp ecx, 0xd7a99d03
jle 0x10053c13
cmp ecx, 0xe60c88f3
jg 0x10053d7b
cmp ecx, 0xdbd297f5
jle 0x10054133
cmp ecx, 0xe25be97d
jg 0x10054a9d
cmp ecx, 0xdbd297f6
je 0x10054e3a
cmp ecx, 0xdf5023ec
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xe94999b2
mov ecx, 0x3a8907e0
mov edx, 0x243e3a7b
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x2860ed3d
jg 0x10053c8e
cmp ecx, 0x1f742f37
jle 0x10053dc6
cmp ecx, 0x237d70ec
jle 0x10054172
cmp ecx, 0x25e7d4cb
jg 0x10054abf
cmp ecx, 0x237d70ed
je 0x10054e55
cmp ecx, 0x243e3a7b
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xe86cf459
mov ecx, 0x35e61c54
mov edx, 0x2143201f
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0x8a73db63
jle 0x10053e11
cmp ecx, 0x9057ba54
jle 0x100541c8
cmp ecx, 0x9420c632
jg 0x10054af2
cmp ecx, 0x9057ba55
je 0x10054e70
cmp ecx, 0x90ce5092
jne 0x10053220
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0xe4]
lea ecx, [esp + 0x124]
add eax, ecx
mov dword [esp + 0xe8], eax
cmp byte [esp + 0x33], 0
mov eax, 0x268b0d04
mov ecx, 0x9f9cff18
jmp 0x10055c6d
cmp ecx, 0x4d25d9f2
jle 0x10053e5c
cmp ecx, 0x5e995972
jle 0x10054207
cmp ecx, 0x6021d22a
jg 0x10054b25
cmp ecx, 0x5e995973
je 0x10054e8b
cmp ecx, 0x5ebfb5aa
jne 0x10053220
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov eax, dword [eax]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x8c]
cmp eax, dword [esp + 0xd8]
mov eax, 0x92b4a536
mov ecx, 0xc4b8ec25
jmp 0x10053209
cmp ecx, 0xccf74c30
jle 0x1005401f
cmp ecx, 0xcee0952f
jle 0x10054246
cmp ecx, 0xd50baa46
jg 0x10054b58
cmp ecx, 0xcee09530
je 0x10052c34
cmp ecx, 0xd2deb013
jne 0x10053220
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov eax, dword [eax]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x88]
cmp eax, dword [esp + 0xd4]
mov eax, 0xe849b60
mov ecx, 0x7832c782
jmp 0x10053209
cmp ecx, 0x352cca67
jle 0x1005406a
cmp ecx, 0x3a8907df
jle 0x10054285
cmp ecx, 0x3b6b9a2a
jg 0x10054b8b
cmp ecx, 0x3a8907e0
je 0x10054ee6
cmp ecx, 0x3ad549a8
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x9cccc3e0
mov ecx, 0x35e61c54
mov edx, 0x91dd554
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0xb4ae554b
jle 0x100542c4
cmp ecx, 0xb8cbbcb9
jg 0x10054bbe
cmp ecx, 0xb4ae554c
je 0x10054f01
cmp ecx, 0xb848b06a
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x2cdb5ced
mov ecx, 0x1f742f38
mov edx, 0x6a538c0a
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x749bd88d
jle 0x100543a0
cmp ecx, 0x7dcb0339
jg 0x10054c20
cmp ecx, 0x749bd88e
je 0x10054f1c
cmp ecx, 0x7a6f49d1
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xc4b8ec25
mov ecx, 0x35e61c54
mov edx, 0x6aaf09f4
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0xed77d443
jle 0x100543ce
cmp ecx, 0xf644bea4
jg 0x10054c52
cmp ecx, 0xed77d444
je 0x10054f37
cmp ecx, 0xed7f6672
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x3c4fb8cd
mov ecx, 0x35e61c54
mov edx, 0xd2deb013
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0x91dd553
jle 0x1005440d
cmp ecx, 0x1077ae59
jle 0x10054c85
cmp ecx, 0x1077ae5a
je 0x10054f52
cmp ecx, 0x1bddbf6a
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xd7a9e9b1
mov ecx, 0x35e61c54
mov edx, 0x85bbdda5
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0x842b5a7c
jg 0x1005444c
cmp ecx, 0x80b7a123
je 0x10054f6d
cmp ecx, 0x81d00948
je 0x10054f88
cmp ecx, 0x83ac4e09
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x124956d9
mov ecx, 0x35e61c54
mov edx, 0x2860ed3e
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0x436217fe
jg 0x100544a6
cmp ecx, 0x3e299d4c
je 0x10054ff8
cmp ecx, 0x42cef0a4
je 0x10055013
cmp ecx, 0x42df3f22
jne 0x10053220
mov eax, dword [esp + 0xec]
mov eax, dword [esp + 0x118]
lea ecx, [eax + 0x4a393813]
mov edx, ecx
xor edx, 0xb5c6c7ec
add edx, eax
mov edi, ecx
or edi, 0x4a393813
add edi, edx
or ecx, 0xb5c6c7ec
sub edi, ecx
add edi, 0xb5c6c7ed
mov ecx, eax
not ecx
mov esi, ecx
and esi, 0xfffffffe
mov ebx, eax
mov edx, eax
or edx, 0xfffffffe
add esi, edx
or ebx, 1
add ebx, esi
mov esi, 0xfffffffe
sub esi, ebx
mov ebx, edi
or ebx, 0xb82641fc
not edi
or edi, 0x47d9be03
sub ebx, edi
lea edi, [ebx - 0x704c83fa]
mov ebp, edi
not ebp
and ebp, esi
add ebx, ebp
add ebx, 0x8fb37c06
lea ebp, [eax + ecx*2]
mov dword [esp + 4], ebp
lea ebp, [eax + ecx*2]
add ebp, 1
mov ecx, eax
and edi, esi
add edi, ebx
mov eax, 0x47d9be02
sub eax, edi
xor ecx, 1
lea esi, [edx + ecx]
add ecx, edx
add ecx, 1
mov edi, 0xfffffffe
sub edi, esi
mov esi, edx
and esi, edi
or edi, edx
mov ebx, edx
not ebx
mov edx, ecx
xor edx, ebx
or ecx, ebx
add ecx, edx
add esi, ecx
sub esi, edi
lea ecx, [esi + 1]
mov edx, eax
and edx, ecx
mov edi, ecx
not edi
and edi, eax
add esi, edi
add esi, 1
lea edx, [esi + edx*2]
mov esi, eax
or esi, ecx
sub esi, edx
xor eax, ecx
not eax
mov ecx, 0x8f51df5a
sub ecx, esi
sub ecx, eax
mov edx, ebp
and edx, 1
mov edi, 0xfffffffe
mov ebx, dword [esp + 4]
sub edi, ebx
and ebx, 1
sub edx, ebx
xor ebp, 1
add edx, ebp
or edi, 1
add edx, edi
add edx, 1
or edx, ebp
add eax, esi
add eax, 0x70ae20a5
mov esi, edx
neg esi
and eax, esi
not edx
add edx, eax
or esi, ecx
sub edx, esi
imul eax, edx, 0xeb670e17
lea ecx, [eax + 0x2c961944]
and ecx, 0x31f64721
mov edx, 0x5369e6bb
sub edx, eax
or edx, 0x31f64721
sub edx, ecx
imul ecx, edx, 0x5d5109a7
lea edx, [ecx - 0x614885e0]
mov eax, edx
not eax
mov esi, eax
and esi, 0xbe998f87
add ecx, esi
add ecx, 0x9eb77a20
xor edx, 0x41667078
add edx, ecx
or eax, 0xbe998f87
sub eax, edx
add eax, 0x41667079
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x94]
cmp ecx, eax
mov eax, 0x3c1b2945
jmp 0x100550bc
cmp ecx, 0xc54159ae
jg 0x10054592
cmp ecx, 0xbd7e727a
je 0x1005502e
cmp ecx, 0xbfabbe17
je 0x10055049
cmp ecx, 0xc4837bb5
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xe849b60
mov ecx, 0x3e299d4c
mov edx, 0x38fe8656
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x2ce9d96f
jg 0x1005460e
cmp ecx, 0x2860ed3e
je 0x10055083
cmp ecx, 0x29c6df91
je 0x100550ce
cmp ecx, 0x2c67ea05
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x3c1b2945
mov ecx, 0x35e61c54
mov edx, 0xb8cbbcba
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0x9f247cf9
je 0x100550e1
cmp ecx, 0xa085e818
je 0x100550fc
cmp ecx, 0xa1181e68
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x3c1b2945
mov ecx, 0xbd7e727a
mov edx, 0x30c9e5cb
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x6111516a
je 0x10055117
cmp ecx, 0x61906aa3
je 0x10055132
cmp ecx, 0x6272a741
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xc6733573
mov ecx, 0x80b7a123
mov edx, 0x7a6f49d1
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0xd7a99d04
je 0x10055257
cmp ecx, 0xd7fc5f55
je 0x10055264
cmp ecx, 0xdb83f949
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xa50c2504
mov ecx, 0x42cef0a4
mov edx, 0xce860873
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x1f742f38
je 0x1005527f
cmp ecx, 0x1fe9ec58
je 0x1005529a
cmp ecx, 0x2143201f
jne 0x10053220
mov ecx, 0xe2902e3d
mov dword [esp + 0x9c], 0xffffffff
mov eax, 0x3903130
mov edx, dword [esp + 0x20]
mov byte [esp + 0x60], dl
mov edx, dword [esp + 0x28]
mov byte [esp + 0x13], dl
mov edx, dword [esp + 0x34]
mov byte [esp + 0x1c], dl
jmp 0x10053220
cmp ecx, 0x8a73db64
je 0x100552b5
cmp ecx, 0x8ecafbb1
je 0x100552d0
cmp ecx, 0x8ff7708e
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x31d7dec4
mov ecx, 0xa2e684da
mov edx, 0xc4837bb5
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x4d25d9f3
je 0x100552eb
cmp ecx, 0x564d693a
je 0x10055306
cmp ecx, 0x5d3659c1
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x1e282500
mov ecx, 0x35e61c54
mov edx, 0xfb9c0a94
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0xccf74c31
je 0x10055321
cmp ecx, 0xce5885e5
je 0x1005533c
cmp ecx, 0xce860873
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x92b4a536
mov ecx, 0x62748522
mov edx, 0xc54159af
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x352cca68
je 0x1005534f
cmp ecx, 0x35e61c54
je 0x1005536a
cmp ecx, 0x38fe8656
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x3903130
mov ecx, 0xe25be97e
mov edx, 0xe60c88f4
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0xaf03852e
je 0x10055374
cmp ecx, 0xb0283f6f
je 0x10055390
cmp ecx, 0xb1cb9371
jne 0x10053220
mov eax, dword [esp + 0xe8]
movsx eax, byte [eax]
push dword [esp + 0xdc]
push eax
push dword [esp + 0xe8]
call fcn.10059210
add esp, 0xc
mov ecx, eax
sub ecx, dword [esp + 0x10c]
imul ecx, ecx, 0x7f6d428d
mov edx, ecx
and edx, 0x17ec5002
not ecx
or ecx, 0x17ec5002
sub edx, ecx
lea ecx, [edx + 0x6dc0b006]
mov esi, ecx
and esi, 0x17ec5002
add edx, esi
add edx, 0x6dc0b006
mov esi, ecx
xor esi, 0x17ec5002
add esi, edx
or ecx, 0x17ec5002
sub esi, ecx
imul ecx, esi, 0x8e055045
lea edi, [ecx + 0x843cf76]
mov edx, edi
not edx
mov esi, edx
and esi, 0x26587159
add ecx, esi
add ecx, 0x843cf76
xor edi, 0xd9a78ea6
add edi, ecx
or edx, 0x26587159
sub edi, edx
add edi, 0xd9a78ea7
mov dword [esp + 0xa8], edi
test eax, eax
mov eax, 0x8dfb29ed
mov ecx, 0x9f9cff18
jmp 0x100550c1
cmp ecx, 0x6ed87488
je 0x1005576a
cmp ecx, 0x71895268
je 0x10055785
cmp ecx, 0x71e70338
jne 0x10053220
mov ecx, 0xe2902e3d
jmp 0x10053220
cmp ecx, 0xe60c88f4
je 0x100557a0
cmp ecx, 0xe8942863
je 0x100557bb
cmp ecx, 0xec89c0e0
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xb99d5692
mov ecx, 0x35e61c54
mov edx, 0x5e995973
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0xfb9c0a94
je 0x100557d8
cmp ecx, 0xfd76ed0c
je 0x1005580e
cmp ecx, 0x2f5e9c7
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xe68ddc81
mov ecx, 0xa085e818
mov edx, 0x6111516a
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x842b5a7d
je 0x1005586a
cmp ecx, 0x8504fc01
je 0x10055933
cmp ecx, 0x85bbdda5
jne 0x10053220
mov eax, dword [esp + 0x3c]
mov byte [eax], 0xff
mov eax, dword [esp + 0x78]
mov byte [eax], 0xff
mov eax, dword [esp + 0x7c]
mov byte [eax], 0xff
mov ecx, 0xe2902e3d
mov al, 0xff
mov dword [esp + 0x20], eax
mov eax, 0xe86cf459
mov dl, 0xff
mov dword [esp + 0x28], edx
mov dl, 0xff
mov dword [esp + 0x34], edx
jmp 0x10053220
cmp ecx, 0x436217ff
je 0x1005594e
cmp ecx, 0x4553e02b
je 0x10055c5e
cmp ecx, 0x4aad8733
jne 0x10053220
imul eax, dword [esp + 0x90], 0xe8af1ebb
add eax, 0xe8af1ebb
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x34fa1529
mov esi, eax
and esi, 0xcb05ead6
lea edx, [esi + edx*2]
and ecx, 0xcb05ead6
add ecx, edx
xor eax, 0x34fa1529
lea edx, [ecx + eax]
add eax, ecx
add eax, 0x34fa152a
mov ecx, eax
not ecx
mov esi, ecx
and esi, 0xc33095bc
add edx, esi
add edx, 0x34fa152a
xor eax, 0x3ccf6a43
add eax, edx
or ecx, 0xc33095bc
sub eax, ecx
add eax, 0xc33095bc
mov ecx, eax
and ecx, 0x34fa1529
or eax, 0x34fa1529
add eax, ecx
imul ecx, eax, 0x98517673
lea eax, [ecx + 0x37404e55]
and eax, 0xebac148c
add ecx, 0xd7404e55
or ecx, 0xebac148c
add ecx, eax
lea eax, [ecx + ecx]
sub eax, ecx
lea ecx, [eax - 0x6f631d2b]
mov edx, dword [esp + 0xf0]
mov dword [edx], ecx
mov edx, dword [esp + 0xf4]
mov ecx, dword [esp + 0x114]
cmp edx, 0x10
jae 0x10055f05
mov ecx, dword [esp + 0x50]
jmp 0x10055f07
cmp ecx, 0xc54159af
je 0x10055c7a
cmp ecx, 0xc6c724af
je 0x10055c95
cmp ecx, 0xcabfc337
jne 0x10053220
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x118], eax
movzx eax, byte [esp + 0x16]
mov byte [esp + 0x1b], al
mov eax, dword [esp + 0xec]
mov eax, dword [esp + 0xf0]
mov eax, dword [eax]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [esp + 0xf4], eax
mov eax, dword [esp + 0x90]
cmp eax, dword [esp + 0xf4]
mov eax, 0x7fb4f56b
mov ecx, 0x40dc4373
jmp 0x10053209
cmp ecx, 0x2ce9d970
je 0x10055d9c
cmp ecx, 0x3058f793
je 0x10055db7
cmp ecx, 0x30c9e5cb
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x3408f760
mov ecx, 0x71895268
mov edx, 0xfa20ffa0
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0xa662490d
je 0x10055dd2
cmp ecx, 0xa9edc284
jne 0x10053220
movzx eax, byte [esp + 9]
push eax
call fcn.1005a6f0
add esp, 4
mov edi, eax
movzx eax, byte [esp + 9]
mov ecx, eax
and cl, 0xfb
mov ch, cl
add ch, cl
not cl
or cl, 0xb1
add cl, ch
mov ebx, eax
not bl
mov edx, ebx
or dl, 0x4e
add dl, cl
mov cl, 0x4c
sub cl, dl
mov ah, 0xcc
sub ah, dl
add dl, 0xb3
and cl, 0xb1
add cl, dl
xor dl, 0x4e
add dl, cl
or ah, 0xb1
sub dl, ah
mov cl, dl
add cl, 0x4f
add dl, 0x18
mov ah, dl
xor ah, 4
add ah, cl
add dl, dl
or dl, 0xf6
add dl, ah
sub dl, cl
mov bh, al
and bh, 4
mov ah, al
xor ah, 4
mov cl, al
or cl, 0xfb
add cl, ah
mov ah, bh
sub ah, ch
mov dh, bh
add ah, al
movzx esi, bl
or bl, 4
sub ah, bl
not bh
add bh, ah
mov ch, cl
add ch, 5
and ch, bh
sub ch, cl
add ch, 0xfa
mov cl, ch
not cl
add cl, cl
or cl, 0x72
sub cl, ch
mov ah, ch
and ah, 0xc6
movzx ebx, ah
lea ebx, [ebx + ebx*2]
add bl, cl
add dl, 0x38
xor dh, 4
or ch, 0x39
sub ch, bl
lea ebx, [esi + esi*2]
add bl, al
add bl, al
add al, al
or al, 0x76
add al, dh
not al
add al, al
mov cl, dl
add cl, dl
or cl, 0x86
xor dl, 0x3c
add dl, cl
add dl, al
add ch, 0xc6
mov eax, edx
add al, 0xd8
mov cl, ch
not cl
and cl, al
add cl, al
add cl, ch
mov ah, al
xor ah, ch
add ah, ah
sub cl, ah
mov ah, al
or ah, ch
add ah, ah
add ah, cl
sub ah, dl
and al, ch
not al
add al, ah
add al, 0x8f
add bl, 1
mov ecx, ebx
not cl
add cl, al
mov edx, ecx
or dl, 2
add dl, cl
sub bl, al
add bl, dl
and cl, 2
add cl, bl
movzx eax, cl
lea ecx, [eax + eax*4]
mov al, 0x16
sub al, cl
and al, 5
add al, cl
mov dl, 0xe
sub dl, cl
add cl, 0xf1
xor cl, 0xfa
add cl, al
or dl, 5
sub cl, dl
add cl, 0xec
mov eax, ecx
xor al, 0x57
add al, cl
mov edx, ecx
or dl, 0xa8
add dl, al
mov eax, ecx
not al
add al, dl
and cl, 0x57
add cl, al
add cl, 0x59
mov eax, ecx
and al, 5
xor cl, 5
add cl, al
add cl, al
movzx eax, cl
imul ecx, eax, 0xffffffcd
mov eax, ecx
not al
and al, 0xc7
add al, cl
or cl, 0x38
add cl, al
add cl, 0x3a
mov eax, ecx
or al, 0x55
or cl, 0xaa
add cl, al
add cl, 0x56
mov eax, ecx
not al
mov edx, ecx
and dl, 0xc7
add dl, cl
and al, 0x38
add al, dl
xor cl, 0xc7
add cl, al
test edi, edi
mov eax, 0x124956d9
mov edx, 0x61b684bb
cmovne eax, edx
cmp cl, 0x63
cmove eax, edx
jmp 0x10055fc7
cmp ecx, 0x6a538c0a
je 0x10055ded
cmp ecx, 0x6aaf09f4
jne 0x10053220
mov eax, dword [esp + 0x8c]
lea ecx, [eax + 0x7ed032b0]
mov edx, ecx
or edx, 0x7ed032b0
and ecx, 0x7ed032b0
lea esi, [edx + ecx]
add ecx, edx
add ecx, 0x25f9aa0
mov edx, 0xfda0655f
sub edx, esi
and edx, 0x95a2779d
add edx, esi
add edx, 0x25f9aa0
xor ecx, 0x6a5d8862
add ecx, edx
mov edx, 0x7da0655f
sub edx, esi
or edx, 0x95a2779d
sub ecx, edx
lea edx, [ecx + 0x6a5d8863]
mov esi, edx
xor esi, 1
add ecx, esi
add ecx, 0x6a5d8863
mov esi, edx
or esi, 0xfffffffe
add esi, ecx
mov ecx, edx
not ecx
add ecx, esi
and edx, 1
lea esi, [edx + ecx]
add esi, 3
mov ecx, esi
and ecx, 0x95a2779d
xor esi, 0x95a2779d
add esi, ecx
add esi, ecx
mov ebp, eax
mov dword [esp + 4], eax
not eax
mov edi, eax
and edi, 1
mov ecx, eax
and ecx, 0xfffffffe
mov ebx, ebp
and ebx, 0xfffffffe
lea ebx, [edi + ebx*2]
sub edi, ecx
xor ebp, 0xfffffffe
add edi, ebp
add edi, 1
mov edx, eax
or edx, 0xfffffffe
add edx, edi
lea edi, [ebx + ebp]
add edi, 1
mov ebx, edx
not ebx
and ebx, edi
mov ebp, edx
or ebp, edi
add ebp, ebx
not edi
or edi, edx
lea edx, [edi + ebp]
lea ebx, [edi + ebp]
add ebx, 1
mov edi, esi
and edi, 0xf7d1f7fb
add edi, esi
or esi, 0x82e0804
sub edi, esi
lea esi, [edi + 0x105c1008]
mov ebp, esi
not ebp
and ebp, ebx
add ebp, edi
add ebp, 0x105c1008
lea edx, [edx*2 + 2]
add edx, ebp
mov ebp, esi
or ebp, ebx
not ebp
lea ebp, [ebp + ebp*2]
add ebp, edx
xor esi, ebx
add esi, ebp
lea edx, [esi + edi*2]
add edx, 0x20b82013
mov esi, edx
or esi, 0xf7d1f7fb
not edx
or edx, 0x82e0804
sub esi, edx
add ecx, eax
mov ebx, dword [esp + 4]
and ebx, 1
add ecx, ebx
or eax, 1
mov edi, ecx
not edi
add edi, eax
sub ecx, eax
mov edx, ecx
and edx, 0x6cca7ded
and edi, 0x93358212
and ecx, 0x93358212
add ecx, edi
add ecx, edi
add ecx, 0x6cca7dee
or edx, ecx
lea eax, [edx + edx]
xor eax, 0xd994fbdb
or edx, 0x93358212
lea edi, [eax + edx]
add eax, edx
add eax, 2
and ecx, 0x93358212
mov edx, ecx
not edx
add edx, edi
add edx, 2
sub ecx, eax
and ecx, esi
add ecx, esi
sub ecx, edx
mov eax, esi
not eax
add eax, ecx
and esi, edx
lea edx, [esi + eax]
lea ecx, [esi + eax]
add ecx, 1
mov edi, ebx
mov eax, ebx
xor eax, 0xe36f9657
lea esi, [eax + ebx]
add esi, 0x3920d351
add eax, ebx
mov ebp, ebx
lea edi, [eax + ebx]
mov ebx, 0xe36f9656
sub ebx, edi
lea edi, [eax + ebp]
add edi, 0x1c9069a8
add eax, ebp
add eax, 0x1c9069a9
and ebx, esi
not edi
sub edi, ebx
or eax, esi
lea eax, [edi + eax*2]
xor eax, 0x1c9069a8
lea eax, [eax + edx*2]
add eax, 2
sub eax, ecx
lea edx, [eax + 0x726063f5]
mov ecx, edx
and ecx, 0x726063f4
mov esi, edx
and esi, 0x8d9f9c0b
sub esi, ecx
add eax, esi
add eax, 0x726063f5
xor edx, 0x8d9f9c0b
mov ecx, 0x2567572
sub ecx, edx
sub ecx, eax
add eax, edx
add eax, 0xb5a98a8d
mov edx, eax
and edx, 0xfdc8868f
mov esi, eax
xor esi, 0xfdc8868f
add esi, edx
xor eax, 0x2377970
add eax, esi
or ecx, 0xfdc8868f
sub eax, ecx
lea ecx, [eax + 0x4a567574]
mov edx, dword [esp + 0x44]
mov dword [edx], ecx
mov edx, dword [esp + 0xd8]
mov ecx, dword [esp + 0x80]
cmp edx, 0x10
jae 0x10055f2d
mov ecx, dword [esp + 0x50]
jmp 0x10055f2f
cmp ecx, 0xe25be97e
je 0x10055e08
cmp ecx, 0xe2902e3d
jne 0x10053220
mov ecx, 0xd7a99d04
jmp 0x10053220
cmp ecx, 0x25e7d4cc
je 0x10055e23
cmp ecx, 0x27c90eca
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xa50c2504
mov ecx, 0x35e61c54
mov edx, 0xaf03852e
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0x9420c633
je 0x10055e3e
cmp ecx, 0x9903e6bf
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x3903130
mov ecx, 0x35e61c54
mov edx, 0xcee09530
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0x6021d22b
je 0x10055e59
cmp ecx, 0x60f449c9
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x814839a3
mov ecx, 0x35e61c54
mov edx, 0x4553e02b
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0xd50baa47
je 0x10055e74
cmp ecx, 0xd5cb8fc1
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xc4b8ec25
mov ecx, 0x6272a741
mov edx, 0x6021d22b
cmovl ecx, edx
jmp 0x10053220
cmp ecx, 0x3b6b9a2b
je 0x10055e8f
cmp ecx, 0x3ca56103
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x7832c782
mov ecx, 0x35e61c54
mov edx, 0x61906aa3
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0xb8cbbcba
je 0x10055eaa
cmp ecx, 0xb973ff62
jne 0x10053220
lea eax, [esp + 0x120]
mov dword [esp + 0xec], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x114], eax
mov dword [esp + 0xb4], 0
mov eax, 0xa6a83a9
movzx ecx, byte [esp + 0x1a]
mov byte [esp + 0x16], cl
mov ecx, 0xe2902e3d
jmp 0x10053220
cmp ecx, 0x7dcb033a
je 0x10055eda
cmp ecx, 0x7fca8035
jne 0x10053220
mov dword [esp + 0xa8], 0xffffffff
mov eax, 0x8dfb29ed
mov ecx, 0xe2902e3d
jmp 0x10053220
cmp ecx, 0xf644bea5
je 0x10055ef5
cmp ecx, 0xfa20ffa0
jne 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x31d7dec4
mov ecx, 0x35e61c54
mov edx, 0x90ce5092
cmove ecx, edx
jmp 0x10053220
cmp ecx, 0xa9a3bd9
jne 0x10055ff4
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xa8]
mov byte [eax], cl
mov edx, dword [esp + 0xe4]
mov eax, edx
and eax, 0xfffffffe
mov dword [esp + 4], eax
mov ecx, eax
xor ecx, 0xfffffffe
lea esi, [ecx + edx]
neg esi
lea edi, [eax + esi]
add edi, 0xadf89a9c
mov esi, edi
or esi, 0x52076561
not edi
or edi, 0xadf89a9e
sub esi, edi
mov edi, esi
and edi, 0x3cbeb0b6
add edi, esi
mov ebx, esi
xor ebx, 0x3cbeb0b6
add ebx, edi
or esi, 0x3cbeb0b6
sub ebx, esi
lea edi, [ebx - 0x3cbeb0b6]
mov esi, edx
not esi
mov ebp, edi
and ebp, esi
add ebx, ebp
add ebx, 0xc3414f4a
add ebx, edx
or edi, edx
not edi
add edi, ebx
lea ebp, [edx + edi]
lea ebx, [edx + edi]
add ebx, 1
mov eax, ebx
not eax
mov edi, eax
and edi, 0x3cbeb0b6
add edi, ebp
add edi, 1
xor ebx, 0xc3414f49
add ebx, edi
or eax, 0x3cbeb0b6
sub ebx, eax
add ebx, 0x7e958f51
mov edi, ebx
not edi
mov eax, ebx
and eax, 0xbe292167
and ebx, 0xc1d6de98
lea eax, [eax + ebx*2]
and edi, 0x41d6de98
add edi, eax
mov eax, esi
and eax, 1
or esi, 0xfffffffe
add eax, esi
mov ebx, edx
or ebx, 0xfffffffe
add eax, ebx
add eax, 3
add ecx, dword [esp + 4]
xor edx, 1
add edx, ecx
sub edx, esi
or edx, eax
sub edi, edx
imul eax, edi, 0xc3238891
lea ecx, [eax - 0x129d30c1]
mov edx, ecx
or edx, 0x1c372d8d
sub eax, edx
and ecx, 0xe3c8d272
lea edx, [eax + ecx]
add eax, ecx
add eax, 0xb652f2ff
mov ecx, eax
and ecx, 0xe3c8d272
add ecx, edx
add ecx, 0xb652f2ff
mov edx, eax
xor edx, 0xe3c8d272
add edx, ecx
or eax, 0xe3c8d272
sub edx, eax
imul eax, edx, 0x10e13871
lea ecx, [eax - 0x2cfb6273]
add eax, eax
add eax, 0xa6093b1a
or eax, 0x9319ff9e
xor ecx, 0xb6730030
add eax, ecx
add eax, 0x9d1b8e22
mov dword [esp + 0xa0], eax
cmp eax, dword [esp + 0x5c]
mov eax, 0x31d7dec4
mov ecx, 0xf541a611
jmp 0x100550c1
mov ecx, dword [esp]
cmp ecx, 0x40dc4373
mov ecx, 0xed77d444
mov edx, 0xa1181e68
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x9d5c3768
mov ecx, 0x8504fc01
mov edx, 0x3058f793
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xfe7dc993
mov ecx, 0x35e61c54
mov edx, 0xbfabbe17
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x8dfb29ed
mov ecx, 0x35e61c54
mov edx, 0xa9a3bd9
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x482fb26e
mov ecx, 0x4d25d9f3
mov edx, 0x8ecafbb1
cmovl ecx, edx
jmp 0x10053220
mov eax, dword [esp + 0x84]
mov ecx, eax
or ecx, 0xfffffffe
mov edx, eax
xor edx, 1
add edx, ecx
mov ecx, eax
xor ecx, 0xfffffffe
add ecx, edx
not ecx
mov edx, ecx
and edx, 2
add ecx, edx
not eax
or eax, 1
add eax, ecx
mov ecx, edx
sub ecx, eax
neg eax
add eax, edx
add eax, 2
mov edx, dword [esp + 0x44]
mov dword [edx], eax
mov edx, dword [esp + 0xd0]
mov eax, dword [esp + 0x80]
cmp edx, 0x10
jae 0x10055f55
mov eax, dword [esp + 0x50]
jmp 0x10055f57
mov ecx, dword [esp]
cmp ecx, 0xe94999b2
mov ecx, 0x35e61c54
mov edx, 0x842b5a7d
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x86eebbda
mov ecx, 0xccf74c31
mov edx, 0x60f449c9
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x8dfb29ed
mov ecx, 0x237d70ed
mov edx, 0xd50baa47
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x61b684bb
mov ecx, 0x3b6b9a2b
mov edx, 0x9057ba55
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xe849b60
mov ecx, 0x35e61c54
mov edx, 0xce5885e5
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xc6733573
mov ecx, 0x35e61c54
mov edx, 0x81d00948
cmove ecx, edx
jmp 0x10053220
cmp dword [esp + 0xcc], 0
mov eax, 0xe68ddc81
mov ecx, 0x124956d9
cmove eax, ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0xb0], ecx
mov ecx, 0xe2902e3d
mov edx, dword [esp + 0x108]
mov dword [esp + 0xac], edx
movzx edx, byte [esp + 0x64]
mov byte [esp + 0x19], dl
mov dh, byte [esp + 0x15]
mov byte [esp + 0x18], dh
movzx ebx, byte [esp + 0x14]
mov byte [esp + 0x17], bl
mov byte [esp + 0xc], dl
mov byte [esp + 0xb], dh
mov byte [esp + 0xa], bl
mov edx, dword [esp + 0x74]
mov dword [esp + 0xa4], edx
mov dword [esp + 0x70], edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x1e282500
mov ecx, 0x6ed87488
mov edx, 0x1fe9ec58
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xd7a9e9b1
mov ecx, 0x2f5e9c7
mov edx, 0xd5cb8fc1
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x3c4fb8cd
mov ecx, 0xed7f6672
mov edx, 0x2c67ea05
cmovl ecx, edx
jmp 0x10053220
mov eax, 0x1016966c
mov ecx, dword [0x1016967c]
mov dword [esp + 0x54], ecx
cmp dword [0x10169680], 0x10
jb 0x10055066
mov eax, dword [0x1016966c]
mov dword [esp + 0x58], eax
cmp dword [esp + 0x54], 0
mov eax, dword [esp + 0x58]
mov dword [esp + 0x6c], eax
mov eax, 0xdcff4d78
mov ecx, 0xd7a9e9b1
jmp 0x100550c1
mov eax, dword [esp + 0x70]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x48]
movzx ecx, byte [esp + 0xa]
mov byte [eax], cl
mov eax, dword [esp + 0xbc]
movzx ecx, byte [esp + 0xb]
mov byte [eax], cl
mov eax, dword [esp + 0xc4]
movzx ecx, byte [esp + 0xc]
mov byte [eax], cl
cmp dword [esp + 0x5c], 0
mov eax, 0xa50c2504
mov ecx, 0x9cccc3e0
cmove eax, ecx
mov ecx, 0xe2902e3d
jmp 0x10053220
movsx edx, byte [esp + 0x10]
mov ecx, dword [esp + 0x38]
call fcn.10056030
jmp 0x10055f6b
mov ecx, dword [esp]
cmp ecx, 0xdcff4d78
mov ecx, 0x35e61c54
mov edx, 0x6948a7be
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xe86cf459
mov ecx, 0xdf5023ec
mov edx, 0xa662490d
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xdcff4d78
mov ecx, 0x9f247cf9
mov edx, 0x1bddbf6a
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp + 0x88]
lea edi, [ecx + ecx]
mov eax, ecx
and eax, 0xfffffffe
mov edx, ecx
and edx, 1
mov ebx, eax
sub ebx, edx
mov edx, ecx
xor edx, 0xfffffffe
mov dword [esp + 0x24], edx
add ebx, edx
mov esi, ecx
xor esi, 1
add ebx, esi
mov ebp, edi
and ebp, 0x4f865a4e
or edi, 0x4f865a4e
xor edi, 0x4f865a4f
or edi, ebp
mov ebp, ecx
not ebp
or ebp, 0xfffffffe
not ebx
add ebx, ebp
lea edx, [edi + ebx]
mov dword [esp + 4], edx
add ebx, edi
add ebx, 0x4f865a4e
mov edi, ebx
and edi, 0x4f865a4e
mov edx, dword [esp + 4]
add edi, edx
add edi, 0x4f865a4e
mov dword [esp + 4], edi
mov edi, ebx
xor edi, 0x4f865a4e
add edi, dword [esp + 4]
or ebx, 0x4f865a4e
sub edi, ebx
xor eax, 0xfffffffe
add eax, dword [esp + 0x24]
add eax, esi
sub eax, ebp
mov esi, eax
and esi, ecx
lea edx, [esi + esi]
sub edx, ecx
xor ecx, eax
add ecx, edx
lea edx, [edi - 0x4f865a4e]
not eax
add eax, ecx
lea ecx, [esi + eax]
add eax, esi
add eax, 1
not eax
lea eax, [ecx + eax*2 + 1]
mov ecx, edx
not ecx
mov esi, ecx
and esi, 0xe8c75966
add esi, edi
add esi, 0xb079a5b2
xor edx, 0x1738a699
add edx, esi
or ecx, 0xe8c75966
sub edx, ecx
lea ecx, [eax + edx]
add edx, eax
add edx, 0xc5b33450
mov eax, edx
or eax, 0xc5b3344c
sub ecx, eax
and edx, 0x3a4ccbb3
lea eax, [ecx + edx]
add ecx, edx
add ecx, 0xc5b3344f
mov edx, dword [esp + 0x44]
mov dword [edx], ecx
mov edx, dword [esp + 0xd4]
mov ecx, dword [esp + 0x80]
cmp edx, 0x10
jae 0x10055f7a
mov ecx, dword [esp + 0x50]
jmp 0x10055f7c
mov dword [esp], eax
mov ecx, 0x352cca68
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xf541a611
mov ecx, 0x35e61c54
mov edx, 0xb0283f6f
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x2cdb5ced
mov ecx, 0x35e61c54
mov edx, 0x42df3f22
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x124956d9
mov ecx, 0x83ac4e09
mov edx, 0x1077ae5a
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x9d5c3768
mov ecx, 0x35e61c54
mov edx, 0x29c6df91
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x40dc4373
mov ecx, 0x35e61c54
mov edx, 0x4aad8733
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x482fb26e
mov ecx, 0x35e61c54
mov edx, 0xfd76ed0c
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xa6a83a9
mov ecx, 0x35e61c54
mov edx, 0xcabfc337
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x86eebbda
mov ecx, 0x35e61c54
mov edx, 0xb973ff62
cmove ecx, edx
jmp 0x10053220
movsx edx, byte [esp + 0x11]
mov ecx, dword [esp + 0x38]
call fcn.10056030
jmp 0x10055f93
mov ecx, dword [esp]
cmp ecx, 0xf541a611
mov ecx, 0x8ff7708e
mov edx, 0xdb83f949
cmovl ecx, edx
jmp 0x10053220
mov ecx, 0x71e70338
jmp 0x10053220
cmp dword [esp + 0x5c], 0
mov eax, 0xf541a611
mov ecx, 0x482fb26e
cmovg eax, ecx
mov ecx, 0xe2902e3d
jmp 0x10053220
mov esi, dword [esp + 0x3c]
movzx ecx, byte [esp + 0x125]
mov byte [esp + 0x24], cl
shr cl, 4
mov edx, ecx
and dl, 3
mov eax, ecx
xor al, 3
add al, dl
mov edx, ecx
add dl, cl
mov byte [esp + 8], dl
mov byte [esp + 4], dl
or dl, 8
add dl, al
mov eax, ecx
not al
add dl, al
mov ebx, eax
or bl, 3
add bl, dl
movzx ebp, al
mov edx, eax
add dl, al
and dl, 0x52
mov ah, al
and ah, 0x56
add ah, dl
add ah, cl
add ah, 1
mov edx, ecx
and dl, 6
mov dh, cl
xor dh, 0xa9
add dh, dl
mov bh, cl
or bh, 0x56
add bh, dh
add bh, al
or al, 0x56
sub bh, al
add bh, 1
or bh, ah
mov ch, bh
xor ch, 0x56
mov dh, ch
or dh, 0xfc
mov al, ch
or al, 3
sub dh, al
lea eax, [ebp*2]
add eax, ebp
mov dl, byte [esp + 8]
add al, dl
add bl, 3
and bl, cl
add dh, 3
xor bh, 0xa9
and bh, dh
xor dh, ch
not dh
add dh, ch
add bh, dh
mov dh, 0xfe
sub dh, bh
add bh, 1
mov ch, bl
add ch, 0xff
and ch, bh
sub ch, bl
neg bl
add ch, bh
or dh, bl
add dh, ch
movzx ebx, byte [esp + 4]
and bl, 2
mov ch, cl
xor ch, 0xfe
add bl, ch
mov byte [esp + 4], bl
mov ebx, ecx
xor bl, 1
movzx edi, bl
lea ebx, [edi + edi*2]
add bl, byte [esp + 4]
add bl, ch
or dl, 2
sub bl, dl
add bl, 1
mov dl, bl
xor dl, 0xfd
sub dl, bl
mov ch, bl
or ch, 2
add ch, dl
not bl
or bl, 0xfd
sub ch, bl
add ch, 0xfd
mov dl, ch
not dl
mov ebx, edx
and bl, 0xb5
add bl, dl
and ch, 0x4a
add bl, ch
or dl, 0x4a
sub bl, dl
mov dl, bl
not dl
and dl, ch
mov bh, bl
or bh, ch
add bh, dl
and bl, ch
not ch
add ch, bh
add ch, bl
add ch, 1
mov dl, ch
xor dl, 0x4a
add dl, ch
mov bl, ch
not bl
or bl, 0x4a
add bl, dl
and ch, 0x4a
mov dl, ch
not dl
add dl, bl
mov bh, 0xfe
sub bh, dl
mov dl, byte [esi]
sub bl, ch
mov ch, 0xe5
sub ch, dh
add dh, 0x1a
and dh, bh
add dh, ch
add dh, bh
add bl, dh
and ch, bh
add ch, bl
add ch, 1
mov dh, ch
xor dh, 0xe6
add dh, ch
xor ch, 0x19
add ch, dh
add al, 2
and al, 0x2a
and cl, 5
or cl, al
mov eax, ecx
and al, 3
xor al, 1
mov ah, cl
xor ah, 0xd6
mov dh, al
and dh, ah
add dh, dh
xor cl, 0x29
and cl, al
add cl, dh
mov dh, al
or dh, ah
add cl, dh
sub cl, al
not dh
add dh, cl
xor ah, al
add ah, dh
add ah, ch
add ah, 0x1c
movzx eax, ah
lea ecx, [eax + eax*8]
lea ecx, [ecx + ecx*2]
add ecx, eax
add ecx, eax
imul eax, eax, 0xffffffc6
add al, cl
movzx eax, al
imul eax, eax, 0x35
mov cl, 0x80
sub cl, al
add al, 0xff
shl dl, 2
or cl, dl
not dl
and dl, al
add cl, cl
add cl, dl
add cl, 1
mov eax, ecx
and al, 0x55
xor cl, 0x55
add cl, al
add cl, al
movzx eax, cl
lea ecx, [eax + eax*8]
lea ecx, [eax + ecx*8]
add cl, 0xc3
mov eax, ecx
not al
mov edx, ecx
and dl, 0x35
add cl, cl
and cl, 0x94
add cl, dl
and al, 0xca
add al, cl
mov ecx, eax
add cl, 0x35
add al, 0x6b
mov edx, eax
or dl, 0xbb
sub dl, cl
or al, 0x44
add al, dl
add al, cl
add al, 0xbc
mov ecx, eax
add cl, al
sub cl, al
movzx eax, cl
lea ecx, [eax*8]
sub eax, ecx
add al, 0x73
mov ecx, eax
not cl
mov edx, ecx
and dl, 0x7c
add dl, al
xor al, 0x83
add al, dl
or cl, 0x7c
sub al, cl
add al, 0x1d
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x48]
movzx ecx, byte [esp + 0x1a]
mov byte [eax], cl
mov dh, byte [esp + 0x24]
shl dh, 4
movzx eax, byte [esp + 0x126]
shr al, 2
mov ecx, eax
not cl
add cl, cl
add cl, al
mov al, 0xe
sub al, cl
and al, 0xf
movzx ecx, al
lea eax, [ecx + ecx*2]
shl eax, 3
sub eax, ecx
imul ecx, ecx, 0xffffffd2
mov dl, al
or dl, 0xc2
add dl, cl
or al, 0x3d
add al, dl
movzx eax, al
imul ecx, eax, 0x59
mov dl, cl
add dl, 0x59
mov eax, edx
and al, dh
mov ah, al
add ah, al
sub ah, cl
mov ecx, edx
xor cl, dh
add cl, ah
not dl
or dl, dh
sub cl, dl
mov edx, eax
not dl
add cl, dl
add cl, 0xa7
mov ah, al
or ah, cl
add ah, al
or dl, cl
add dl, ah
and cl, al
sub dl, cl
movzx ecx, dl
mov eax, ecx
shl eax, 7
sub eax, ecx
mov ecx, eax
add cl, 0x7f
mov edx, ecx
not dl
or cl, 0xa2
add cl, al
sub al, cl
or dl, 0x5d
add dl, al
movzx eax, dl
mov ecx, eax
shl ecx, 7
sub eax, ecx
mov ecx, eax
add cl, 2
add al, 0x81
mov edx, eax
xor dl, 0xbd
add dl, cl
mov ch, al
or ch, 0x42
add ch, dl
sub ch, cl
and al, 0xbd
add al, ch
add al, 0x44
mov ecx, eax
and cl, 0xa2
xor al, 0xa2
add al, cl
add al, cl
mov ecx, eax
and cl, 0xbd
add cl, al
not al
add cl, al
or al, 0xbd
sub cl, al
add cl, 0xbd
mov byte [esp + 0x122], cl
mov eax, dword [esp + 0x5c]
lea ecx, [eax + 2]
add eax, eax
add eax, 4
sub eax, ecx
lea ecx, [eax - 0x3e31be80]
mov edx, ecx
xor edx, 0xfd24d770
add edx, eax
xor ecx, 0x2db288f
lea eax, [edx + ecx]
add ecx, edx
add ecx, 0xbef318f1
mov edx, ecx
xor edx, 0x3e31be7d
add edx, eax
mov eax, ecx
not eax
and eax, 0xc1ce4182
add eax, edx
and ecx, 0x3e31be7d
lea edx, [eax + ecx]
add ecx, eax
add ecx, 0xfd24d76f
mov eax, ecx
not eax
and ecx, 0x2db288f
add ecx, edx
add ecx, 0xfd24d76f
add edx, edx
add edx, 0xfa49aede
and edx, 0xfa49aee0
mov esi, edx
xor esi, 0xfa49aee0
add esi, ecx
and eax, 0x2db288f
add eax, esi
add eax, edx
add eax, 0x5b65121
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x5c]
cmp eax, 2
mov eax, 0x9cccc3e0
mov ecx, 0x86eebbda
cmovge eax, ecx
mov ecx, 0xe2902e3d
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x268b0d04
mov ecx, 0xb848b06a
mov edx, 0x5d3659c1
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x3408f760
mov ecx, 0x35e61c54
mov edx, 0x5ebfb5aa
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xfe7dc993
mov ecx, 0xdbd297f6
mov edx, 0xd7fc5f55
cmovl ecx, edx
jmp 0x10053220
movsx edx, byte [esp + 0x1b]
mov ecx, dword [esp + 0x38]
call fcn.10056030
mov eax, 0x2cdb5ced
mov ecx, 0xe2902e3d
jmp 0x10053220
mov eax, dword [esp + 0x40]
movzx eax, byte [esp + 0x12]
mov byte [esp + 0x64], al
movzx eax, byte [esp + 0x11]
mov byte [esp + 0x15], al
mov ecx, 0xe2902e3d
mov dword [esp + 0x74], 0
mov eax, 0xc6733573
movzx edx, byte [esp + 0x10]
mov byte [esp + 0x14], dl
jmp 0x10053220
mov eax, 0x1016966c
mov ecx, dword [0x1016967c]
mov dword [esp + 0xdc], ecx
cmp dword [0x10169680], 0x10
jb 0x1005582e
mov eax, dword [0x1016966c]
mov dword [esp + 0xe0], eax
cmp dword [esp + 0xdc], 0
sete byte [esp + 0x33]
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x10c], eax
mov ecx, 0xe2902e3d
mov dword [esp + 0xa0], 0
mov eax, 0x31d7dec4
jmp 0x10053220
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x104], eax
lea eax, [esp + 0x125]
mov dword [esp + 0x78], eax
lea eax, [esp + 0x126]
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x122]
mov dword [esp + 0xbc], eax
lea eax, [esp + 0x127]
mov dword [esp + 0xc0], eax
lea eax, [esp + 0x123]
mov dword [esp + 0xc4], eax
lea eax, [esp + 0x11c]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x48]
movzx eax, byte [eax]
mov byte [esp + 0x17], al
mov eax, dword [esp + 0xbc]
movzx eax, byte [eax]
mov byte [esp + 0x18], al
mov eax, dword [esp + 0xc4]
movzx eax, byte [eax]
mov byte [esp + 0x19], al
mov ecx, 0xe2902e3d
mov dword [esp + 0xac], 0
mov eax, 0xe68ddc81
mov edx, dword [esp + 0xb8]
mov dword [esp + 0xb0], edx
mov dword [esp + 0xa4], 0
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x9f9cff18
mov ecx, 0x9420c633
mov edx, 0x8a73db64
cmovl ecx, edx
jmp 0x10053220
mov eax, dword [esp + 0x68]
lea ecx, [eax + 0x546875fe]
mov edx, ecx
and edx, 0xfffffffe
add eax, edx
add eax, 0x546875fe
or ecx, 1
sub eax, ecx
lea ecx, [eax + 2]
mov edx, ecx
not edx
mov esi, edx
and esi, 0xab978a02
add esi, eax
add esi, 2
and edx, 0x546875fd
lea edx, [edx + edx*2]
add edx, esi
xor ecx, 0xab978a02
add ecx, edx
lea eax, [ecx + eax*2]
add eax, 4
imul eax, eax, 0x8d4a6d89
lea ecx, [eax + 0x58beb2bf]
and ecx, 0x231fd07d
mov edx, ecx
xor edx, 0x231fd07d
add eax, edx
add eax, 0x58beb2bf
lea edx, [eax + ecx]
add eax, ecx
add eax, 0x8cbd2dc4
mov ecx, eax
not ecx
and ecx, 0xdce02f82
lea ecx, [ecx + edx*2]
add ecx, 0x197a5b88
or eax, 0xdce02f82
sub ecx, eax
imul eax, ecx, 0x78e218b9
lea ecx, [eax - 0x3e36255]
and ecx, 0xef29263a
mov edx, ecx
xor edx, 0xef29263a
add eax, edx
add eax, 0xfc1c9dab
add eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
or edx, 0x47f78d5c
lea eax, [edx + eax*2]
or ecx, 0xb80872a3
add eax, ecx
add eax, 0x58ce6724
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x68]
movzx ecx, byte [esp + 9]
mov byte [esp + eax + 0x124], cl
mov ebx, dword [esp + 0xc8]
mov edx, ebx
xor edx, 0xfffffffe
mov ecx, edx
and ecx, ebx
mov eax, ebx
or eax, 1
mov dword [esp + 0x64], eax
lea esi, [eax + 1]
sub esi, ecx
add esi, edx
add esi, 1
not ecx
add ecx, esi
mov esi, ebx
neg esi
mov edi, ecx
and edi, esi
lea ebp, [ebx - 1]
and ebp, ecx
lea edi, [edi*2]
add edi, ebp
add edi, ebx
mov ebp, ecx
or ebp, esi
not ebp
add ebp, edi
xor esi, ecx
lea ecx, [esi + ebp]
add ecx, 1
mov edi, ecx
and edi, 0x5ce9f0b8
or ecx, 0x5ce9f0b8
mov eax, 0xdce9f0b5
sub eax, edi
sub eax, ecx
mov dword [esp + 4], eax
add edi, ecx
add edi, 0xa3160f4a
mov esi, ebx
not esi
mov ebp, esi
or ebp, 1
mov eax, ebx
xor eax, 1
add eax, ebp
add eax, 1
mov ebp, ebx
and ebp, 0xfffffffe
mov ecx, dword [esp + 0x64]
add ebp, ecx
add ebp, 1
add ebp, edx
add ebp, 1
mov edx, esi
or edx, 0xfffffffe
add edx, ebp
or edx, eax
mov ecx, edx
and ecx, 0x30cfa03b
mov ebp, edx
and ebp, 0xcf305fc4
sub ebp, ecx
mov eax, edx
xor eax, 0xcf305fc4
add eax, ebp
mov ebp, edx
xor ebp, 0x30cfa03b
add ebp, eax
not edx
or edx, 0xcf305fc4
sub ebp, edx
xor ecx, 0x30cfa03b
or ebp, ecx
xor ebp, 0xcf305fc4
and edi, 0x8e6b95a6
mov eax, dword [esp + 4]
or eax, 0x8e6b95a6
sub edi, eax
lea eax, [edi + ebp]
lea ecx, [edi + ebp]
add ecx, 0x8e6b95a5
mov edx, ecx
and edx, 0x8e6b95a6
add eax, edx
add eax, 0x8e6b95a5
mov edx, ecx
xor edx, 0x8e6b95a6
add edx, eax
or ecx, 0x8e6b95a6
sub edx, ecx
and esi, 0xea1a6b09
mov eax, ebx
xor eax, 0x95e594f6
lea ecx, [eax + esi*2]
add ecx, ebx
mov eax, ebx
or eax, 0x95e594f6
sub ecx, eax
add ecx, 0x95e594f7
and ebx, 0x95e594f6
or ebx, ecx
mov eax, ebx
and eax, 0x95e594f6
mov esi, ecx
and esi, 0xea1a6b09
lea eax, [eax + esi*2]
mov esi, ebx
sub esi, eax
xor ebx, 0x6a1a6b09
add ebx, esi
lea esi, [edx + 0x71946a5a]
or ecx, 0x95e594f6
lea eax, [ecx + ebx]
add eax, 0x6a1a6b08
mov ecx, esi
xor ecx, 0x34c9c918
add ecx, edx
add ecx, 0x71946a5a
add edx, edx
add edx, 0xe328d4b4
or edx, 0x966c6dce
add edx, ecx
and eax, 0xfffffffe
not esi
add esi, edx
add esi, eax
imul eax, esi, 0x37358b1b
lea ecx, [eax - 0x2b27f905]
mov edx, ecx
and edx, 0x5f059983
add eax, edx
add eax, 0xd4d806fb
mov edx, ecx
xor edx, 0x5f059983
add edx, eax
or ecx, 0x5f059983
sub edx, ecx
imul eax, edx, 0x95c9d713
lea ecx, [eax - 0xefc1eca]
add eax, eax
add eax, 0xe207c26c
or eax, 0x1f576d94
xor ecx, 0xf0544935
add eax, ecx
add eax, 0x6821df7e
mov dword [esp + 0x108], eax
cmp dword [esp + 0x74], 4
mov eax, 0xc6733573
mov ecx, 0xfe7dc993
cmove eax, ecx
movzx ecx, byte [esp + 0xf]
mov byte [esp + 0x64], cl
movzx ecx, byte [esp + 0xe]
mov byte [esp + 0x15], cl
mov ecx, 0xe2902e3d
movzx edx, byte [esp + 0xd]
mov byte [esp + 0x14], dl
jmp 0x10053220
cmp byte [esp + 0x32], 0
mov eax, 0xe94999b2
mov ecx, 0x9cccc3e0
cmovne eax, ecx
mov ecx, 0xe2902e3d
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x8a5154d3
mov ecx, 0x749bd88e
mov edx, 0xb4ae554c
cmovl ecx, edx
jmp 0x10053220
mov esi, dword [esp + 0xb0]
lea eax, [esi - 0x6b4e6fc5]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x6b4e6fc4
xor eax, 0x6b4e6fc4
add eax, edx
and ecx, 0x94b1903b
add ecx, eax
add ecx, esi
imul eax, ecx, 0x3c84cd53
mov ecx, eax
not ecx
and ecx, 0x474e1c56
add ecx, eax
mov edx, eax
xor edx, 0xb8b1e3a9
add edx, ecx
and eax, 0xb8b1e3a9
lea ecx, [edx + eax]
add eax, edx
add eax, 0x474e1c57
mov edx, eax
and edx, 0x320abc54
add edx, edx
add ecx, ecx
add ecx, 0x8e9c38ae
sub ecx, edx
mov edx, eax
not edx
or edx, 0x4df543ab
sub ecx, edx
and eax, 0x4df543ab
mov edx, eax
not edx
add edx, ecx
add edx, 0x4df543ab
add ecx, 0x4df543ab
sub eax, ecx
and eax, 0x474e1c56
lea eax, [eax + edx*2]
or edx, 0x474e1c56
sub eax, edx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0xc8], ecx
movzx ecx, byte [esp + 0x17]
mov byte [esp + 0xd], cl
movzx ecx, byte [esp + 0x18]
mov byte [esp + 0xe], cl
movzx ecx, byte [esp + 0x19]
mov byte [esp + 0xf], cl
imul eax, eax, 0x2d24fedb
add eax, 0xc8f7e125
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x100]
cmp dword [eax], 0x10
mov eax, dword [esp + 0x104]
jae 0x10055fa2
mov eax, dword [esp + 0xfc]
jmp 0x10055fa4
mov ecx, dword [esp]
cmp ecx, 0x7fb4f56b
mov ecx, 0x7dcb033a
mov edx, 0x3ca56103
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x9cccc3e0
mov ecx, 0x3ad549a8
mov edx, 0xa622e93c
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xe68ddc81
mov ecx, 0x35e61c54
mov edx, 0xc6c724af
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x268b0d04
mov ecx, 0x35e61c54
mov edx, 0xb1cb9371
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xa6a83a9
mov ecx, 0x564d693a
mov edx, 0x9903e6bf
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x61b684bb
mov ecx, 0x35e61c54
mov edx, 0x436217ff
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x9f9cff18
mov ecx, 0x35e61c54
mov edx, 0x7fca8035
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0xb99d5692
mov ecx, 0xec89c0e0
mov edx, 0x27c90eca
cmovl ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x8a5154d3
mov ecx, 0x35e61c54
mov edx, 0xa9edc284
cmove ecx, edx
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x7832c782
mov ecx, 0x2ce9d970
mov edx, 0x25e7d4cc
cmovl ecx, edx
jmp 0x10053220
mov eax, dword [esp + 0x94]
movzx eax, byte [esp + eax + 0x121]
mov byte [esp + 0x16], al
mov eax, 0xa6a83a9
mov ecx, dword [esp + 0x94]
mov dword [esp + 0xb4], ecx
mov ecx, 0xe2902e3d
jmp 0x10053220
mov ecx, dword [esp]
cmp ecx, 0x7fb4f56b
mov ecx, 0x35e61c54
mov edx, 0xe8942863
cmove ecx, edx
jmp 0x10053220
movsx edx, byte [esp + 0x12]
mov ecx, dword [esp + 0x38]
call fcn.10056030
jmp 0x10055f46
mov ecx, dword [ecx]
mov edx, dword [esp + 0x90]
movzx ebx, byte [esp + 0x1b]
mov byte [ecx + edx], bl
mov byte [ecx + eax - 0x6f631d2b], 0
mov ecx, 0xe2902e3d
mov eax, 0x2cdb5ced
jmp 0x10053220
mov ecx, dword [ecx]
mov edx, dword [esp + 0x8c]
movzx ebx, byte [esp + 0x12]
mov byte [ecx + edx], bl
mov byte [ecx + eax + 0x4a567574], 0
mov ecx, 0xe2902e3d
mov eax, 0x1e282500
jmp 0x10053220
mov eax, dword [eax]
mov edx, dword [esp + 0x84]
movzx ebx, byte [esp + 0x10]
mov byte [eax + edx], bl
mov byte [eax + ecx + 2], 0
mov ecx, 0xe2902e3d
mov eax, 0x3c4fb8cd
jmp 0x10053220
mov ecx, dword [ecx]
mov edx, dword [esp + 0x88]
movzx ebx, byte [esp + 0x11]
mov byte [ecx + edx], bl
mov byte [ecx + eax - 0x3a4ccbb1], 0
mov ecx, 0xe2902e3d
mov eax, 0x3408f760
jmp 0x10053220
mov eax, dword [eax]
mov ecx, dword [esp + 0xc8]
movzx eax, byte [eax + ecx]
mov byte [esp + 9], al
movzx eax, byte [esp + 9]
cmp al, 0x3d
mov eax, 0x8a5154d3
mov ecx, 0x124956d9
cmove eax, ecx
movzx ecx, byte [esp + 0xf]
mov byte [esp + 0xc], cl
movzx ecx, byte [esp + 0xe]
mov byte [esp + 0xb], cl
movzx ecx, byte [esp + 0xd]
mov byte [esp + 0xa], cl
mov ecx, 0xe2902e3d
mov edx, dword [esp + 0x68]
mov dword [esp + 0x70], edx
jmp 0x10053220
cmp ecx, 0x91dd554
jne 0x10053220
mov eax, dword [esp + 0x48]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x128]
xor ecx, esp
call fcn.1005875a
add esp, 0x12c
pop esi
pop edi
pop ebx
pop ebp
ret