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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x1c8
mov eax, dword [ebp + 8]
mov ecx, eax
mov edx, dword [ebp + 0xc]
mov dword [esp + 0x1c0], edx
mov edx, dword [esp + 0x1c0]
mov dword [esp + 0x1bc], edx
mov edx, dword [esp + 0x1bc]
movzx edx, byte [edx]
cmp edx, 0xff
mov dword [esp + 0x184], eax
mov dword [esp + 0x180], ecx
je 0x49da39
mov eax, dword [esp + 0x1c0]
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x184]
call fcn.005366c0
sub esp, 4
mov dword [esp + 0x17c], eax
jmp 0x49eac8
mov eax, 0xffffffff
mov ecx, dword [esp + 0x1bc]
movzx ecx, byte [ecx + 1]
shl ecx, 8
mov edx, dword [esp + 0x1bc]
movzx edx, byte [edx + 2]
mov esi, ecx
xor esi, 0xffffffff
and esi, 0xf188348d
mov edi, eax
xor edi, 0xf188348d
mov ebx, ecx
and ebx, edi
mov dword [esp + 0x178], eax
xor eax, 0xffffffff
and eax, 0xf188348d
and edi, 0xffffffff
or esi, ebx
or eax, edi
xor esi, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0xffffffff
mov edi, dword [esp + 0x178]
xor edi, 0xffffffff
mov ebx, edx
and ebx, edi
or eax, ebx
mov edi, dword [esp + 0x178]
xor edi, 0x79f61cd5
and edi, 0xffffffff
mov ebx, dword [esp + 0x178]
xor ebx, 0xffffffff
and ebx, 0x79f61cd5
or edi, ebx
mov ebx, dword [esp + 0x178]
xor ebx, 0x79f61cd5
mov dword [esp + 0x174], eax
mov eax, esi
xor eax, ebx
and eax, esi
mov ebx, edi
xor ebx, 0x4749be29
xor ebx, 0xb8b641d6
mov dword [esp + 0x170], eax
mov eax, ecx
xor eax, ebx
and eax, ecx
mov ecx, dword [esp + 0x178]
xor ecx, 0x79f61cd5
mov ebx, dword [esp + 0x174]
xor ebx, ecx
mov ecx, dword [esp + 0x174]
and ebx, ecx
mov ecx, edi
xor ecx, 0x8e84199d
xor ecx, 0x717be662
mov dword [esp + 0x16c], eax
mov eax, 0x447cd8
mov eax, edx
xor eax, ecx
and eax, edx
mov ecx, dword [esp + 0x170]
xor ecx, 0x730eed15
xor ecx, 0x8cf112ea
mov edx, dword [esp + 0x16c]
xor edx, 0x2b39ecdc
xor edx, 0xd4c61323
mov dword [esp + 0x168], eax
mov eax, dword [esp + 0x178]
xor eax, 0xd650b454
mov dword [esp + 0x164], eax
mov eax, ecx
and eax, 0xd650b454
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0x170]
mov dword [esp + 0x15c], ecx
mov ecx, dword [esp + 0x164]
and eax, ecx
mov ecx, edx
and ecx, 0xd650b454
mov dword [esp + 0x158], eax
mov eax, dword [esp + 0x16c]
mov dword [esp + 0x154], ecx
mov ecx, dword [esp + 0x164]
and eax, ecx
mov ecx, dword [esp + 0x160]
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x158]
or ecx, eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x14c], ecx
mov ecx, dword [esp + 0x150]
or eax, ecx
mov ecx, dword [esp + 0x14c]
xor ecx, eax
mov eax, dword [esp + 0x15c]
or eax, edx
xor eax, 0xffffffff
mov edx, dword [esp + 0x164]
or edx, 0xd650b454
and eax, edx
or ecx, eax
mov edx, 0x447b58
mov eax, ebx
mov edx, dword [esp + 0x168]
and eax, edx
xor ebx, edx
or eax, ebx
mov ebx, eax
mov ebx, ecx
xor ebx, 0xffffffff
and ebx, 0x56142c4a
mov edx, dword [esp + 0x178]
xor edx, 0x56142c4a
and ecx, edx
mov dword [esp + 0x148], eax
xor eax, 0xffffffff
and eax, 0x56142c4a
mov dword [esp + 0x144], eax
mov eax, dword [esp + 0x148]
and eax, edx
or ebx, ecx
mov ecx, dword [esp + 0x144]
or ecx, eax
xor ebx, ecx
mov eax, 0x447cd8
mov eax, esi
mov ecx, dword [esp + 0x174]
and eax, ecx
xor esi, ecx
or eax, esi
mov edx, eax
xor edx, 0xffffffff
and edx, 0x204c0074
mov esi, dword [esp + 0x178]
xor esi, 0x204c0074
and eax, esi
mov ecx, dword [esp + 0x178]
xor ecx, 0xffffffff
and ecx, 0x204c0074
and esi, 0xffffffff
or edx, eax
or ecx, esi
xor edx, ecx
mov eax, dword [esp + 0x178]
xor eax, 0x8327fe5f
xor eax, 0xfad1e28a
mov ecx, edi
xor ecx, 0xffffffff
mov esi, dword [esp + 0x178]
xor esi, 0x4259bc6d
mov dword [esp + 0x140], eax
and eax, 0x4259bc6d
mov dword [esp + 0x13c], eax
mov eax, 0x80000
mov eax, esi
and eax, 0x79f61cd5
mov dword [esp + 0x138], eax
mov eax, ecx
and eax, 0x4259bc6d
and edi, esi
mov dword [esp + 0x134], eax
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x130], ecx
mov ecx, dword [esp + 0x138]
or eax, ecx
mov ecx, dword [esp + 0x134]
or ecx, edi
xor eax, ecx
mov ecx, dword [esp + 0x140]
mov edi, dword [esp + 0x130]
or ecx, edi
xor ecx, 0xffffffff
or esi, 0x4259bc6d
and ecx, esi
or eax, ecx
xor edx, 0xffffffff
xor eax, 0xffffffff
mov ecx, dword [esp + 0x178]
xor ecx, 0xd4ea099
xor ecx, 0x81e71bd2
or edx, eax
or ecx, 0x8ca9bb4b
xor edx, 0xffffffff
and edx, ecx
mov eax, 0x447bc4
mov eax, ebx
xor eax, 0xffffffff
mov ecx, edx
xor ecx, 0xffffffff
mov esi, dword [esp + 0x178]
xor esi, 0xd12891ff
mov edi, eax
and edi, 0xd12891ff
and ebx, esi
mov dword [esp + 0x12c], eax
mov eax, ecx
and eax, 0xd12891ff
and edx, esi
or edi, ebx
or eax, edx
xor edi, eax
mov eax, dword [esp + 0x12c]
or eax, ecx
xor eax, 0xffffffff
or esi, 0xd12891ff
and eax, esi
or edi, eax
mov si, di
mov word [esp + 0x1ba], si
mov eax, dword [esp + 0x1bc]
movzx eax, byte [eax + 3]
shl eax, 0x18
mov ecx, dword [esp + 0x1bc]
movzx ecx, byte [ecx + 4]
shl ecx, 0x10
mov edx, 0x400
mov edx, ecx
xor edx, 0xffffffff
mov edi, eax
xor edi, edx
and edi, eax
mov edx, eax
xor edx, 0xffffffff
and edx, 0x84136b92
mov ebx, dword [esp + 0x178]
xor ebx, 0x84136b92
and eax, ebx
mov esi, ecx
xor esi, 0xffffffff
and esi, 0x84136b92
and ecx, ebx
or edx, eax
or esi, ecx
xor edx, esi
mov eax, edi
and eax, edx
xor edi, edx
or eax, edi
mov ecx, dword [esp + 0x1bc]
movzx ecx, byte [ecx + 5]
shl ecx, 8
mov edx, eax
xor edx, 0xffffffff
and edx, 0xffffffff
mov esi, dword [esp + 0x178]
xor esi, 0xffffffff
mov edi, eax
and edi, esi
or edx, edi
mov esi, ecx
xor esi, 0xffffffff
and esi, 0xed65a5a9
mov edi, dword [esp + 0x178]
xor edi, 0xed65a5a9
mov ebx, ecx
and ebx, edi
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x178]
xor eax, 0xffffffff
and eax, 0xed65a5a9
and edi, 0xffffffff
or esi, ebx
or eax, edi
xor esi, eax
mov eax, dword [esp + 0x178]
xor eax, 0xff4d06e9
and eax, 0x324c86e3
mov edi, dword [esp + 0x178]
xor edi, 0x324c86e3
mov ebx, 0x447cd8
mov ebx, edi
and ebx, 0xff4d06e9
mov dword [esp + 0x124], eax
mov eax, dword [esp + 0x178]
xor eax, 0xffffffff
and eax, 0x324c86e3
and edi, 0xffffffff
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0x124]
or eax, ebx
mov ebx, dword [esp + 0x120]
or ebx, edi
xor eax, ebx
mov edi, dword [esp + 0x178]
xor edi, 0xff4d06e9
mov ebx, eax
mov ebx, edx
xor ebx, edi
and ebx, edx
mov edi, dword [esp + 0x128]
xor edi, 0xc9678c40
xor edi, 0x369873bf
mov dword [esp + 0x11c], eax
xor eax, 0xffffffff
mov dword [esp + 0x118], eax
mov eax, dword [esp + 0x178]
push ebx
mov ebx, 0x2c2253a0
xor ebx, 0xc8c59223
xor eax, ebx
pop ebx
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x118]
or edi, eax
mov eax, dword [esp + 0x114]
or eax, 0xe4e7c183
xor edi, 0xffffffff
and edi, eax
mov eax, esi
xor eax, 0xffffffff
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x178]
xor eax, 0xff4d06e9
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x178]
xor eax, 0xcfabacaf
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0x110]
mov dword [esp + 0x104], ecx
mov ecx, dword [esp + 0x10c]
or eax, ecx
mov ecx, dword [esp + 0x108]
or ecx, 0xcfabacaf
xor eax, 0xffffffff
and eax, ecx
mov ecx, dword [esp + 0x104]
xor ecx, 0xffffffff
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x11c]
xor eax, 0xffffffff
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0x178]
xor eax, 0xb4784804
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xfc]
or ecx, eax
mov eax, dword [esp + 0xf8]
or eax, 0xb4784804
xor ecx, 0xffffffff
and ecx, eax
mov eax, ecx
mov eax, ebx
xor eax, 0xffffffff
mov dword [esp + 0xf4], eax
mov eax, 0x447d2c
mov eax, edi
xor eax, 0xb96f69b8
xor eax, 0x46909647
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x178]
xor eax, 0x545e778b
mov dword [esp + 0xec], eax
mov eax, dword [esp + 0xf4]
and eax, 0x545e778b
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0xec]
and ebx, eax
mov eax, dword [esp + 0xf0]
and eax, 0x545e778b
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0xec]
and edi, eax
mov eax, dword [esp + 0xe8]
or eax, ebx
mov ebx, dword [esp + 0xe4]
or ebx, edi
xor eax, ebx
mov edi, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
or edi, ebx
xor edi, 0xffffffff
mov ebx, dword [esp + 0xec]
or ebx, 0x545e778b
and edi, ebx
or eax, edi
mov edi, dword [esp + 0x100]
and edi, ecx
mov ebx, dword [esp + 0x100]
xor ebx, ecx
or edi, ebx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xc407f22d
mov ebx, dword [esp + 0x178]
xor ebx, 0xc407f22d
and eax, ebx
mov dword [esp + 0xe0], eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0xc407f22d
and edi, ebx
mov ebx, dword [esp + 0xe0]
or ecx, ebx
or eax, edi
xor ecx, eax
mov eax, edx
and eax, esi
xor edx, esi
or eax, edx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xde110d81
mov esi, dword [esp + 0x178]
xor esi, 0xde110d81
and eax, esi
mov edi, dword [esp + 0x178]
xor edi, 0xffffffff
and edi, 0xde110d81
and esi, 0xffffffff
or edx, eax
or edi, esi
xor edx, edi
mov eax, dword [esp + 0x178]
xor eax, 0x3241b
xor eax, 0xff4e22f2
mov esi, dword [esp + 0x11c]
xor esi, 0x19ffca5d
xor esi, 0xe60035a2
mov edi, dword [esp + 0x178]
xor edi, 0x8bb7b881
mov ebx, 0x80000
mov ebx, eax
and ebx, 0x8bb7b881
mov dword [esp + 0xdc], eax
mov eax, edi
and eax, 0xff4d06e9
mov dword [esp + 0xd8], eax
mov eax, esi
and eax, 0x8bb7b881
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x11c]
and eax, edi
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0xd8]
or ebx, eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0xd0]
or eax, ecx
xor ebx, eax
mov eax, dword [esp + 0xdc]
or eax, esi
xor eax, 0xffffffff
or edi, 0x8bb7b881
and eax, edi
or ebx, eax
xor ebx, 0xffffffff
mov eax, esi
mov eax, edx
xor eax, ebx
and eax, edx
mov ecx, dword [esp + 0xcc]
and ecx, eax
mov edx, dword [esp + 0xcc]
xor edx, eax
or ecx, edx
mov eax, dword [esp + 0x1bc]
movzx eax, byte [eax + 6]
mov edx, 0x3f
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xffffffff
mov esi, dword [esp + 0x178]
xor esi, 0xffffffff
mov edi, ecx
and edi, esi
or edx, edi
mov esi, eax
xor esi, 0xffffffff
and esi, 0xffffffff
mov edi, dword [esp + 0x178]
xor edi, 0xffffffff
mov ebx, eax
and ebx, edi
or esi, ebx
mov edi, dword [esp + 0x178]
xor edi, 0xab4ecad5
and edi, 0xe44c4759
mov ebx, dword [esp + 0x178]
xor ebx, 0xe44c4759
mov dword [esp + 0xc8], eax
mov eax, 8
mov eax, ebx
and eax, 0xab4ecad5
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x178]
xor eax, 0xffffffff
and eax, 0xe44c4759
and ebx, 0xffffffff
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xc4]
or edi, eax
mov eax, dword [esp + 0xc0]
or eax, ebx
xor edi, eax
mov eax, dword [esp + 0x178]
xor eax, 0x39a1bdd3
xor eax, 0x92ef7706
mov ebx, edx
xor ebx, eax
and ebx, edx
mov eax, edi
xor eax, 0xffffffff
mov dword [esp + 0xbc], eax
mov eax, 0x447b40
mov eax, ecx
mov dword [esp + 0xb8], ecx
mov ecx, dword [esp + 0xbc]
xor eax, ecx
mov ecx, dword [esp + 0xb8]
and eax, ecx
mov ecx, dword [esp + 0x178]
xor ecx, 0xab4ecad5
mov dword [esp + 0xb4], eax
mov eax, 0x800
mov eax, esi
xor eax, ecx
and eax, esi
mov ecx, edi
xor ecx, 0x53dc2e4c
xor ecx, 0xac23d1b3
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xc8]
xor eax, ecx
mov ecx, dword [esp + 0xc8]
and eax, ecx
mov ecx, 0x447c30
mov ecx, ebx
xor ecx, 0xffffffff
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xb4]
xor eax, 0xffffffff
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x178]
xor eax, 0x134572b6
mov dword [esp + 0xa4], eax
mov eax, ecx
and eax, 0x134572b6
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xa4]
and ebx, eax
mov eax, dword [esp + 0xa8]
and eax, 0x134572b6
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 0xa4]
and eax, ecx
mov ecx, dword [esp + 0xa0]
or ecx, ebx
mov ebx, dword [esp + 0x9c]
or ebx, eax
xor ecx, ebx
mov eax, dword [esp + 0x98]
mov ebx, dword [esp + 0xa8]
or eax, ebx
xor eax, 0xffffffff
mov ebx, dword [esp + 0xa4]
or ebx, 0x134572b6
and eax, ebx
or ecx, eax
mov eax, dword [esp + 0xb0]
mov ebx, dword [esp + 0xac]
and eax, ebx
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0xac]
xor ebx, eax
mov eax, dword [esp + 0x94]
or eax, ebx
mov ebx, ecx
xor ebx, 0xffffffff
and ebx, 0x3e62dbaf
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x178]
xor eax, 0x3e62dbaf
and ecx, eax
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x90]
xor eax, 0xffffffff
and eax, 0x3e62dbaf
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x8c]
and eax, ecx
mov ecx, dword [esp + 0x84]
or ebx, ecx
mov ecx, dword [esp + 0x88]
or ecx, eax
xor ebx, ecx
mov eax, edx
xor eax, 0xffffffff
mov ecx, esi
xor ecx, 0xffffffff
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x178]
xor eax, 0x80946fa3
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x80]
and eax, 0x80946fa3
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x7c]
and edx, eax
mov eax, ecx
and eax, 0x80946fa3
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x7c]
and esi, eax
mov eax, dword [esp + 0x78]
or eax, edx
mov edx, dword [esp + 0x74]
or edx, esi
xor eax, edx
mov edx, dword [esp + 0x80]
or edx, ecx
xor edx, 0xffffffff
mov ecx, dword [esp + 0x7c]
or ecx, 0x80946fa3
and edx, ecx
or eax, edx
mov ecx, ebx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x8202ac3b
mov edx, dword [esp + 0x178]
xor edx, 0x8202ac3b
and eax, edx
mov esi, dword [esp + 0x178]
xor esi, 0xffffffff
and esi, 0x8202ac3b
and edx, 0xffffffff
or ecx, eax
or esi, edx
xor ecx, esi
mov eax, dword [esp + 0x178]
xor eax, 0xab4ecad5
mov edx, edi
xor edx, 0xffffffff
mov esi, dword [esp + 0x178]
xor esi, 0xf2ec7195
mov dword [esp + 0x70], eax
and eax, 0xf2ec7195
mov dword [esp + 0x6c], eax
mov eax, esi
and eax, 0xab4ecad5
mov dword [esp + 0x68], eax
mov eax, 0x447b58
mov eax, edx
and eax, 0xf2ec7195
and edi, esi
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x68]
or eax, ecx
mov ecx, dword [esp + 0x64]
or ecx, edi
xor eax, ecx
mov ecx, dword [esp + 0x70]
or ecx, edx
xor ecx, 0xc82a16a0
xor ecx, 0x37d5e95f
or esi, 0xf2ec7195
and ecx, esi
or eax, ecx
xor eax, 0xffffffff
mov ecx, dword [esp + 0x60]
xor ecx, eax
mov eax, dword [esp + 0x60]
and ecx, eax
mov edx, 0x447b58
mov edx, ebx
and edx, ecx
xor ebx, ecx
or edx, ebx
mov dword [esp + 0x1b4], edx
mov ecx, dword [esp + 0x1bc]
add ecx, 7
mov dword [esp + 0x1bc], ecx
lea ecx, [esp + 0x198]
call fcn.004d2100
mov dword [esp + 0x194], 0
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x194]
movzx ecx, word [esp + 0x1ba]
cmp eax, ecx
jae 0x49ea93
mov eax, 0xffffffff
mov ecx, dword [esp + 0x194]
mov edx, dword [esp + 0x1bc]
movzx ecx, byte [edx + ecx]
mov edx, dword [esp + 0x1b4]
mov esi, dword [esp + 0x194]
mov edi, esi
xor edi, 0xffffffff
and edi, 0x9d658bef
mov ebx, eax
xor ebx, 0x9d658bef
and esi, ebx
mov dword [esp + 0x58], eax
xor eax, 0xffffffff
and eax, 0x9d658bef
and ebx, 0xffffffff
or edi, esi
or eax, ebx
xor edi, eax
mov eax, dword [esp + 0x58]
xor eax, 3
and eax, 0xec1c1d3
mov esi, dword [esp + 0x58]
xor esi, 0xec1c1d3
mov ebx, esi
and ebx, 3
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x58]
xor eax, 0xffffffff
and eax, 0xec1c1d3
and esi, 0xffffffff
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x54]
or eax, ebx
mov ebx, dword [esp + 0x50]
or ebx, esi
xor eax, ebx
mov esi, dword [esp + 0x58]
xor esi, 0x6ac10279
and esi, 0xffffffff
mov ebx, dword [esp + 0x58]
xor ebx, 0xffffffff
and ebx, 0x6ac10279
or esi, ebx
mov ebx, 0x1ffff
mov ebx, edi
xor ebx, 0xffffffff
mov dword [esp + 0x4c], eax
xor eax, 0xffffffff
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x58]
xor eax, 0x291f67c
mov dword [esp + 0x44], eax
mov eax, ebx
and eax, 0x291f67c
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x44]
and edi, eax
mov eax, dword [esp + 0x48]
and eax, 0x291f67c
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x44]
and eax, ecx
mov ecx, dword [esp + 0x40]
or ecx, edi
mov edi, dword [esp + 0x3c]
or edi, eax
xor ecx, edi
mov eax, dword [esp + 0x48]
or ebx, eax
xor ebx, 0xffffffff
mov edi, dword [esp + 0x44]
or edi, 0x291f67c
and ebx, edi
or ecx, ebx
mov edi, dword [esp + 0x58]
xor edi, 0x6ac10279
mov ebx, esi
xor ebx, 0xffffffff
mov eax, dword [esp + 0x58]
xor eax, 0x9132fa4e
mov dword [esp + 0x34], eax
mov eax, edi
and eax, 0x9132fa4e
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x34]
and eax, 0x6ac10279
mov dword [esp + 0x2c], eax
mov eax, 0x447cf0
mov eax, ebx
and eax, 0x9132fa4e
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x34]
and esi, eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x2c]
or eax, ecx
mov ecx, dword [esp + 0x28]
or ecx, esi
xor eax, ecx
or edi, ebx
xor edi, 0xffffffff
mov ecx, dword [esp + 0x34]
or ecx, 0x9132fa4e
and edi, ecx
or eax, edi
mov ecx, dword [esp + 0x24]
xor ecx, 0xffffffff
and ecx, 0xffffffff
mov esi, dword [esp + 0x58]
push ebx
mov ebx, 0x8580dc4c
xor ebx, 0x7a7f23b3
xor esi, ebx
pop ebx
mov edi, dword [esp + 0x24]
and edi, esi
or ecx, edi
xor eax, 0xffffffff
mov esi, ecx
xor esi, eax
and esi, ecx
shl esi, 3
mov ecx, esi
shr edx, cl
mov eax, dword [esp + 0x38]
sub eax, 0x39435438
add eax, 0xd49e295e
add eax, 0x39435438
add eax, 0x8cf33390
sub eax, edx
sub eax, 0x8cf33390
sub eax, 0xe1bf3ced
sub eax, 0xd49e295e
sub eax, 0x1e40c313
mov edx, eax
push eax
mov eax, 0x605b8e29
xor eax, 0x9fa471d6
xor edx, eax
pop eax
and edx, 0xffffffff
mov esi, dword [esp + 0x58]
xor esi, 0xffffffff
and eax, esi
or edx, eax
mov eax, dword [esp + 0x58]
xor eax, 0xff
and eax, 0xffffffff
mov esi, dword [esp + 0x58]
xor esi, 0xffffffff
and esi, 0xff
or eax, esi
mov esi, dword [esp + 0x58]
xor esi, 0x39f63295
and esi, 0xffffffff
mov edi, dword [esp + 0x58]
xor edi, 0xffffffff
and edi, 0x39f63295
or esi, edi
mov edi, edx
xor edi, 0xffffffff
mov ebx, edx
mov ebx, eax
xor ebx, 0xffffffff
mov ecx, dword [esp + 0x58]
xor ecx, 0x23bf229d
mov dword [esp + 0x20], eax
mov eax, 0x2000
mov eax, edi
and eax, 0x23bf229d
and edx, ecx
mov dword [esp + 0x1c], eax
mov eax, ebx
and eax, 0x23bf229d
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x20]
and eax, ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
or eax, edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x14]
or edx, eax
mov eax, dword [esp + 0x10]
xor eax, edx
or edi, ebx
xor edi, 0xffffffff
or ecx, 0x23bf229d
and edi, ecx
or eax, edi
mov ecx, esi
and ecx, 0x39f63295
xor esi, 0x39f63295
or ecx, esi
mov edx, 0x447cd8
mov edx, eax
xor edx, 0xffffffff
and edx, 0xffffffff
mov esi, dword [esp + 0x58]
xor esi, 0xffffffff
and eax, esi
or edx, eax
xor edx, 0x19b61044
xor edx, 0xe649efbb
xor ecx, 0xffffffff
mov eax, dword [esp + 0x58]
xor eax, 0x1c08d357
xor eax, 0xea3c95f2
or edx, ecx
or eax, 0xf63446a5
xor edx, 0xffffffff
and edx, eax
mov al, dl
movsx ecx, al
mov edx, esp
mov dword [edx], ecx
lea ecx, [esp + 0x198]
call fcn.00478c80
sub esp, 4
jmp 0x49ea45
mov eax, 0
mov ecx, 0x4c447a8e
mov edx, dword [esp + 0x194]
mov esi, eax
sub esi, edx
add esi, 0
add ecx, 0
sub ecx, 1
sub ecx, 0x4c447a8e
sub esi, 0x531d284e
add esi, ecx
add esi, 0x531d284e
sub eax, esi
add eax, 0
mov dword [esp + 0x194], eax
jmp 0x49e6b2
mov eax, esp
lea ecx, [esp + 0x198]
mov dword [eax], ecx
mov ecx, dword [esp + 0x184]
call fcn.00536600
sub esp, 4
mov dword [esp + 0x188], 1
lea ecx, [esp + 0x198]
mov dword [esp + 0xc], eax
call fcn.00506f10
mov al, 1
mov ecx, 0xe07a5e92
pushfd
add ecx, 0x1f85a16e
popfd
mov edx, dword [0x6e5094]
call fcn.0049ed60
mov edi, ecx
sub edi, edx
mov ebx, ecx
sub ebx, 0x45d37cb6
add edi, ebx
sub ecx, edi
add ecx, 0xe6679b3a
sub ecx, 1
sub ecx, 0xe6679b3a
add ecx, 0xdd30e88d
sub ecx, 0x45d37cb6
sub ecx, 0xdd30e88d
imul edx, ecx
and edx, 1
cmp edx, 0
sete ah
cmp esi, 0xa
setl cl
mov ch, ah
xor ch, 1
and ch, 1
mov dl, al
xor dl, 1
mov dh, ah
and dh, dl
or ch, dh
mov dl, cl
xor dl, 1
and dl, 1
mov dh, al
xor dh, 1
mov bl, cl
and bl, dh
or dl, bl
mov dh, al
xor dh, 0
and dh, 1
mov bl, al
xor bl, 1
and bl, 0
or dh, bl
mov bl, ch
xor bl, 1
mov bh, al
xor bh, 0
mov byte [esp + 0xb], al
xor al, 0
or bl, bh
or al, 0
xor bl, 1
and bl, al
xor ah, 1
mov al, dh
xor al, 1
mov bh, byte [esp + 0xb]
xor bh, 1
or ah, al
or bh, 1
xor ah, 1
and ah, bh
mov al, byte [esp + 0xb]
xor al, 0
mov bh, dl
xor bh, al
and bh, dl
xor cl, 1
mov al, dh
xor al, 1
mov byte [esp + 0xa], al
mov al, byte [esp + 0xb]
xor al, 0
mov byte [esp + 9], al
mov al, byte [esp + 0xa]
or cl, al
mov al, byte [esp + 9]
or al, 0
xor cl, 1
and cl, al
mov al, bl
xor al, 1
mov byte [esp + 8], al
mov al, ah
xor al, 1
mov byte [esp + 7], al
mov al, byte [esp + 0xb]
xor al, 0
mov byte [esp + 6], al
mov al, byte [esp + 8]
and al, 0
mov byte [esp + 5], al
mov al, byte [esp + 6]
and bl, al
mov al, byte [esp + 7]
and al, 0
mov byte [esp + 4], al
mov al, byte [esp + 6]
and ah, al
mov al, byte [esp + 5]
or al, bl
mov bl, byte [esp + 4]
or bl, ah
xor al, bl
mov ah, byte [esp + 8]
mov bl, byte [esp + 7]
or ah, bl
xor ah, 1
mov bl, byte [esp + 6]
or bl, 0
and ah, bl
or al, ah
mov ah, bh
and ah, cl
xor bh, cl
or ah, bh
mov cl, al
xor cl, 1
mov bl, ah
and bl, cl
xor ah, 1
and al, ah
or bl, al
mov al, ch
and al, dl
xor ch, dl
or al, ch
mov cl, al
xor cl, 1
and cl, 1
mov dl, byte [esp + 0xb]
xor dl, 1
and al, dl
mov ah, byte [esp + 0xb]
xor ah, 1
and ah, 1
and dl, 1
or cl, al
or ah, dl
xor cl, ah
mov al, dh
and al, 0
xor dh, 0
or al, dh
xor al, 1
mov dl, cl
xor dl, al
and dl, cl
mov al, bl
xor al, 1
mov cl, dl
xor cl, 1
mov ah, byte [esp + 0xb]
xor ah, 0
mov ch, al
and ch, 0
and bl, ah
mov dh, cl
and dh, 0
and dl, ah
or ch, bl
or dh, dl
xor ch, dh
or al, cl
xor al, 1
or ah, 0
and al, ah
or ch, al
test ch, 1
jne 0x49ecbe
jmp 0x49ed56
mov eax, 0x5c9bb0
mov eax, dword [eax]
mov ecx, dword [0x6e5094]
mov edx, dword [0x6e5090]
mov esi, ecx
sub esi, 0x982ef0f0
add esi, 0x566515b4
add esi, 0x982ef0f0
add esi, 0x21efbdbb
sub esi, 1
sub esi, 0x21efbdbb
sub eax, 0x566515b4
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bh
xor al, 1
mov ah, bl
xor ah, al
and ah, bl
mov al, bl
xor al, 1
mov cl, bh
and cl, al
xor bh, 1
and bl, bh
or cl, bl
mov al, ah
and al, cl
xor ah, cl
or al, ah
test al, 1
jne 0x49ed47
jmp 0x49ed56
mov eax, dword [esp + 0x180]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
jmp 0x49ecbe