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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x2f0
mov esi, esp
mov edi, dword [ebp + 0xc]
lea eax, [0x44ab34]
mov dword [esi + 0x27c], eax
mov al, byte [esi + 0xa8]
mov byte [esi + 0xc0], al
mov byte [esi + 0xac], 0xfb
mov byte [esi + 0xad], 0x61
mov byte [esi + 0xae], 0xc7
mov byte [esi + 0xaf], 0x63
mov byte [esi + 0xb0], 0xed
mov byte [esi + 0xb1], 0x65
mov byte [esi + 0xb2], 0xb2
mov byte [esi + 0xb3], 0x67
mov byte [esi + 0xb4], 0x86
mov byte [esi + 0xb5], 0x59
mov byte [esi + 0xb6], 0xfe
mov byte [esi + 0xb7], 0x5b
mov byte [esi + 0xb8], 0xfe
mov byte [esi + 0xb9], 0x5d
mov byte [esi + 0xba], 0x5e
mov byte [esi + 0xbb], 0x5f
mov eax, 0x10
mov byte [esi + eax + 0xac], 0
add eax, 1
cmp eax, 0x11
jne 0x422d41
xor eax, eax
cmp eax, 0x11
jae 0x422de8
movzx edx, byte [esi + eax + 0xac]
mov edi, eax
add edi, 1
mov ecx, eax
xor ecx, 0xffffffff
or ecx, 0xc018b798
add ecx, edi
mov edi, eax
or edi, 0xc018b798
add ecx, edi
mov edi, edx
shl edi, 1
xor edi, 0xffffffff
add edi, edx
and edi, 0xb3146ccb
and edx, 0x34
or edi, edx
xor ecx, edi
xor ecx, 0xb3146ccb
mov ebx, ecx
add ebx, 7
mov edi, ecx
add edi, 8
mov edx, 0xf8
sub edx, ecx
or edx, 1
add edx, edi
mov edi, 0xc07b95f8
sub edi, ecx
mov ecx, edi
and ecx, 0xa9
and ebx, 0x56
or ecx, ebx
and edi, 1
xor edi, 1
or ecx, edi
mov edi, dword [ebp + 0xc]
xor ecx, 0xa8
add edx, ecx
mov byte [esi + eax + 0xac], dl
add eax, 1
jmp 0x422d53
lea eax, [esi + 0xac]
sub esp, 0xc
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
call fcn.0041d480
add esp, 0xc
and al, 1
movzx ebx, al
mov al, byte [esi + 0xa4]
mov byte [esi + 0xc4], al
mov byte [esi + 0x140], 0x71
mov byte [esi + 0x141], 0x9b
mov byte [esi + 0x142], 0x71
mov byte [esi + 0x143], 0x99
mov byte [esi + 0x144], 0x66
mov byte [esi + 0x145], 0xa7
mov byte [esi + 0x146], 0x5a
mov byte [esi + 0x147], 0xa5
mov byte [esi + 0x148], 0x63
mov byte [esi + 0x149], 0xa3
mov byte [esi + 0x14a], 0x90
mov byte [esi + 0x14b], 0xa1
mov byte [esi + 0x14c], 0x4c
mov byte [esi + 0x14d], 0xaf
mov byte [esi + 0x14e], 0x40
mov byte [esi + 0x14f], 0xad
mov byte [esi + 0x150], 0xac
mov byte [esi + 0x151], 0xab
mov eax, 0x12
mov byte [esi + eax + 0x140], 0
add eax, 1
cmp eax, 0x17
jne 0x422e9b
xor eax, eax
cmp eax, 0x17
jae 0x422eea
movzx edx, byte [esi + eax + 0x140]
mov edi, eax
shl edi, 1
and edi, 0x8a03bcb6
mov ecx, eax
xor ecx, 0x4501de5b
add ecx, edi
mov edi, ecx
and edi, edx
shl edi, 1
add ecx, edx
sub ecx, edi
mov edi, dword [ebp + 0xc]
add cl, 0x39
mov byte [esi + eax + 0x140], cl
add eax, 1
jmp 0x422ead
lea eax, [esi + 0x140]
sub esp, 0xc
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
call fcn.0041d480
add esp, 0xc
and al, 1
movzx eax, al
or ebx, eax
cmp ebx, 0
setne bl
mov al, byte [esi + 0xa0]
mov byte [esi + 0xc8], al
mov byte [esi + 0x114], 0x56
mov byte [esi + 0x115], 0xcb
mov byte [esi + 0x116], 0x5b
mov byte [esi + 0x117], 0xc9
mov byte [esi + 0x118], 0x46
mov byte [esi + 0x119], 0xc7
mov byte [esi + 0x11a], 0x55
mov byte [esi + 0x11b], 0xc5
mov byte [esi + 0x11c], 0x5c
mov byte [esi + 0x11d], 0xc3
mov byte [esi + 0x11e], 0x55
mov byte [esi + 0x11f], 0xc1
mov byte [esi + 0x120], 0x4d
mov byte [esi + 0x121], 0xbf
mov byte [esi + 0x122], 0x32
mov byte [esi + 0x123], 0xbd
mov byte [esi + 0x124], 0x2d
mov byte [esi + 0x125], 0xbb
mov byte [esi + 0x126], 0x34
mov byte [esi + 0x127], 0xb9
mov byte [esi + 0x128], 0x3f
mov byte [esi + 0x129], 0xb7
mov byte [esi + 0x12a], 0x64
mov byte [esi + 0x12b], 0xb5
mov byte [esi + 0x12c], 0x39
mov byte [esi + 0x12d], 0xb3
mov byte [esi + 0x12e], 0x3d
mov byte [esi + 0x12f], 0xb1
mov byte [esi + 0x130], 0x24
mov byte [esi + 0x131], 0xaf
mov byte [esi + 0x132], 0x39
mov byte [esi + 0x133], 0xad
mov byte [esi + 0x134], 0x20
mov byte [esi + 0x135], 0xab
mov byte [esi + 0x136], 0x31
mov byte [esi + 0x137], 0xa9
mov byte [esi + 0x138], 0xa8
mov byte [esi + 0x139], 0xa7
mov eax, 0x26
mov byte [esi + eax + 0x114], 0
add eax, 1
cmp eax, 0x29
jne 0x423031
xor eax, eax
cmp eax, 0x29
jae 0x423084
movzx edx, byte [esi + eax + 0x114]
mov ecx, eax
add ecx, 0x5efa57b3
mov edi, ecx
and edi, edx
shl edi, 1
add ecx, edx
sub ecx, edi
mov edi, dword [ebp + 0xc]
mov edx, ecx
and edx, 0x55
xor edx, 0x55
and ecx, 0xaa
sub ecx, edx
add cl, 0xd6
mov byte [esi + eax + 0x114], cl
add eax, 1
jmp 0x423043
lea eax, [esi + 0x114]
sub esp, 0xc
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
call fcn.0041d480
add esp, 0xc
and al, 1
movzx ecx, al
and bl, 1
movzx edx, bl
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edx, ecx
xor edx, 0xffffffff
xor ecx, 0xffffffff
or edx, ecx
and eax, edx
xor eax, 0xffffffff
cmp eax, 0
setne byte [esi + 3]
mov al, byte [esi + 0x9c]
mov byte [esi + 0xcc], al
mov byte [esi + 0x28], 0xc7
mov byte [esi + 0x29], 0x79
mov byte [esi + 0x2a], 0xc5
mov byte [esi + 0x2b], 0x77
mov byte [esi + 0x2c], 0xc7
mov byte [esi + 0x2d], 0x75
mov byte [esi + 0x2e], 0xc5
mov byte [esi + 0x2f], 0x73
mov byte [esi + 0x30], 0xc9
mov byte [esi + 0x31], 0x71
mov byte [esi + 0x32], 0xf3
mov byte [esi + 0x33], 0x4f
mov byte [esi + 0x34], 0xc3
mov byte [esi + 0x35], 0x4d
mov byte [esi + 0x36], 0xb8
mov byte [esi + 0x37], 0x4b
mov byte [esi + 0x38], 0xc7
mov byte [esi + 0x39], 0x49
mov byte [esi + 0x3a], 0xf7
mov byte [esi + 0x3b], 0x47
mov byte [esi + 0x3c], 0xf0
mov byte [esi + 0x3d], 0x45
mov byte [esi + 0x3e], 0xfb
mov byte [esi + 0x3f], 0x43
mov byte [esi + 0x40], 0xcc
mov byte [esi + 0x41], 0x41
mov byte [esi + 0x42], 0xe3
mov byte [esi + 0x43], 0x5f
mov byte [esi + 0x44], 0x5c
mov byte [esi + 0x45], 0x5d
mov eax, 0x1e
mov byte [esi + eax + 0x28], 0
add eax, 1
cmp eax, 0x20
jne 0x423157
xor ebx, ebx
cmp ebx, 0x20
jae 0x423191
mov dl, byte [esi + ebx + 0x28]
movzx edi, dl
mov eax, ebx
add eax, 0xf9bf0516
mov ecx, eax
and ecx, edi
mov edi, dword [ebp + 0xc]
shl ecx, 1
sub eax, ecx
add al, dl
add al, 0x92
mov byte [esi + ebx + 0x28], al
add ebx, 1
jmp 0x423166
lea eax, [esi + 0x28]
sub esp, 0xc
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
call fcn.0041d480
add esp, 0xc
and al, 1
movzx eax, al
mov cl, byte [esi + 3]
and cl, 1
movzx ecx, cl
mov edx, ecx
and edx, eax
xor ecx, eax
or edx, ecx
cmp edx, 0
setne bl
mov al, byte [esi + 0x98]
mov byte [esi + 0xd0], al
mov byte [esi + 0x10], 0xbc
mov byte [esi + 0x11], 0x21
mov byte [esi + 0x12], 0xbd
mov byte [esi + 0x13], 0x23
mov byte [esi + 0x14], 0xc3
mov byte [esi + 0x15], 0x25
mov byte [esi + 0x16], 0xbf
mov byte [esi + 0x17], 0x27
mov byte [esi + 0x18], 0x46
mov byte [esi + 0x19], 0xd9
mov byte [esi + 0x1a], 0x49
mov byte [esi + 0x1b], 0xdb
mov byte [esi + 0x1c], 2
mov byte [esi + 0x1d], 0xdd
mov byte [esi + 0x1e], 0x44
mov byte [esi + 0x1f], 0xdf
mov byte [esi + 0x20], 0x43
mov byte [esi + 0x21], 0xd1
mov byte [esi + 0x22], 0x4d
mov byte [esi + 0x23], 0xd3
mov byte [esi + 0x24], 0x4a
mov byte [esi + 0x25], 0xd5
mov byte [esi + 0x26], 0xd6
mov byte [esi + 0x27], 0xd7
xor eax, eax
cmp eax, 0x18
jae 0x423268
mov dl, byte [esi + eax + 0x10]
mov ecx, 0x87
sub ecx, eax
and ecx, 0xfa
mov edi, eax
and edi, 5
or ecx, edi
mov edi, dword [ebp + 0xc]
xor cl, dl
xor cl, 0xfa
add cl, 0xa8
mov byte [esi + eax + 0x10], cl
add eax, 1
jmp 0x423237
lea eax, [esi + 0x10]
sub esp, 0xc
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
call fcn.0041d480
add esp, 0xc
and al, 1
movzx ecx, al
and bl, 1
movzx eax, bl
mov edx, ecx
and edx, eax
xor edx, 0xffffffff
add eax, ecx
add eax, 1
add eax, edx
cmp eax, 0
setne bl
mov al, byte [esi + 0x74]
mov byte [esi + 0xd4], al
mov byte [esi + 0x78], 0x94
mov byte [esi + 0x79], 0xfb
mov byte [esi + 0x7a], 0x66
mov byte [esi + 0x7b], 0xf9
mov byte [esi + 0x7c], 0x5f
mov byte [esi + 0x7d], 0xff
mov byte [esi + 0x7e], 0x5b
mov byte [esi + 0x7f], 0xfd
mov byte [esi + 0x80], 0x67
mov byte [esi + 0x81], 0xf3
mov byte [esi + 0x82], 0x67
mov byte [esi + 0x83], 0xf1
mov byte [esi + 0x84], 0x22
mov byte [esi + 0x85], 0xf7
mov byte [esi + 0x86], 0x63
mov byte [esi + 0x87], 0xf5
mov byte [esi + 0x88], 0x63
mov byte [esi + 0x89], 0xeb
mov byte [esi + 0x8a], 0x76
mov byte [esi + 0x8b], 0xe9
mov byte [esi + 0x8c], 0x77
mov byte [esi + 0x8d], 0xef
mov byte [esi + 0x8e], 0x7a
mov byte [esi + 0x8f], 0xed
mov byte [esi + 0x90], 0x77
mov byte [esi + 0x91], 0xe3
mov byte [esi + 0x92], 0xe2
mov byte [esi + 0x93], 0xe1
mov eax, 0x1c
mov byte [esi + eax + 0x78], 0
add eax, 1
cmp eax, 0x1e
jne 0x42335d
xor eax, eax
cmp eax, 0x1e
jae 0x4233e3
mov byte [esi + 2], bl
movzx ebx, byte [esi + eax + 0x78]
mov ecx, eax
add ecx, 0xb13af5eb
mov edx, ecx
xor edx, 0x9d0053ec
shl ecx, 1
and ecx, 0xc5ff5826
sub ecx, edx
mov edi, ecx
or edi, ebx
mov edx, ecx
add edx, ebx
xor edx, 0xffffffff
add edi, edx
mov edx, ecx
and edx, ebx
and edx, 0xc9
and edi, 0x33ae8b36
or edx, edi
xor edx, 0x33ae8b36
or ecx, ebx
mov bl, byte [esi + 2]
mov edi, edx
shl edi, 1
xor edi, 0xffffffff
add edx, edi
mov edi, dword [ebp + 0xc]
and edx, ecx
mov ecx, edx
shl ecx, 1
and ecx, 8
xor edx, 4
add edx, ecx
add dl, 1
mov byte [esi + eax + 0x78], dl
add eax, 1
jmp 0x42336c
sub esp, 0xc
lea eax, [esi + 0x78]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.0041d480
add esp, 0xc
or bl, al
and bl, 1
mov byte [esi + 2], bl
xor eax, eax
cmp dword [ebp + 0x10], 0
sete al
mov dword [esi + 0x278], eax
mov eax, dword [esi + 0x27c]
mov ecx, dword [esi + 0x278]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x19c], eax
push eax
mov eax, esp
mov dword [esi + 0x1a0], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x198], eax
mov dword [eax], 0x28
push eax
mov eax, esp
mov dword [esi + 0x1b0], eax
mov dword [eax], 0x44ab3c
push eax
mov dword [esi + 0x1a8], esp
push eax
mov eax, esp
mov dword [esi + 0x1ac], eax
mov dword [eax], 0x44ab44
push eax
mov dword [esi + 0x1a4], esp
push eax
mov eax, esp
mov dword [esi + 0x1c0], eax
mov dword [eax], 0x44ab4c
push eax
mov dword [esi + 0x1b8], esp
push eax
mov eax, esp
mov dword [esi + 0x1bc], eax
mov dword [eax], 0x44ab54
push eax
mov dword [esi + 0x1b4], esp
push eax
mov eax, esp
mov dword [esi + 0x1c8], eax
mov dword [eax], 0x44ab5c
push eax
mov dword [esi + 0x1c4], esp
push eax
mov eax, esp
mov dword [esi + 0x1d8], eax
mov dword [eax], 0x44ab64
push eax
mov dword [esi + 0x1d0], esp
push eax
mov eax, esp
mov dword [esi + 0x1d4], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x1cc], eax
mov dword [eax], 0x15
push eax
mov eax, esp
mov dword [esi + 0x24c], eax
mov dword [eax], 0x44ab6c
push eax
mov dword [esi + 0x248], esp
push eax
mov eax, esp
mov dword [esi + 0x244], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x240], eax
mov dword [eax], 0x1d
push eax
mov eax, esp
mov dword [esi + 0x23c], eax
mov dword [eax], 0x44ab74
push eax
mov dword [esi + 0x238], esp
push eax
mov eax, esp
mov dword [esi + 0x234], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x230], eax
mov dword [eax], 0x1c
push eax
mov eax, esp
mov dword [esi + 0x22c], eax
mov dword [eax], 0x44ab7c
push eax
mov dword [esi + 0x228], esp
push eax
mov eax, esp
mov dword [esi + 0x224], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x220], eax
mov dword [eax], 0x1b
push eax
mov eax, esp
mov dword [esi + 0x21c], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x218], eax
mov dword [eax], 0x1c
push eax
mov eax, esp
mov dword [esi + 0x214], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x20c], eax
mov dword [eax], 0x15
push eax
mov eax, esp
mov dword [esi + 0x210], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x200], eax
mov dword [eax], 0x1e
push eax
mov eax, esp
mov dword [esi + 0x208], eax
mov dword [eax], 0x44ab84
push eax
mov dword [esi + 0x1f4], esp
push eax
mov eax, esp
mov dword [esi + 0x204], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x1ec], eax
mov dword [eax], 0x20
push eax
mov eax, esp
mov dword [esi + 0x1f8], eax
mov dword [eax], 0x44ab8c
push eax
mov dword [esi + 0x1e8], esp
push eax
mov eax, esp
mov dword [esi + 0x50], eax
mov dword [eax], 0x44ab94
push eax
mov dword [esi + 0x1fc], esp
push eax
mov eax, esp
mov dword [esi + 0x1f0], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x1e4], eax
mov dword [eax], 0x23
push eax
mov eax, esp
mov dword [esi + 0x274], eax
mov dword [eax], 0x44aa10
push eax
mov eax, esp
mov dword [esi + 0x268], eax
mov dword [eax], 0x24
push eax
mov eax, esp
mov dword [eax], 0x44ab9c
push eax
mov dword [esi + 0x260], esp
push eax
mov edx, esp
mov dword [esi + 0x26c], edx
mov dword [edx], 0x44aa10
push eax
mov edx, esp
mov dword [esi + 0x25c], edx
mov dword [edx], 0x26
push eax
mov edx, esp
mov dword [esi + 0x258], edx
mov dword [edx], 0x44aa10
push eax
mov ecx, esp
mov dword [esi + 0x250], ecx
mov dword [ecx], 0x27
push eax
mov edx, esp
mov dword [edx], 0x44aa10
push eax
mov ecx, esp
mov dword [esi + 0x254], ecx
mov dword [ecx], 0x28
push eax
mov ecx, esp
mov dword [esi + 0x194], ecx
mov dword [ecx], 0x44aa10
push eax
mov ecx, esp
mov dword [esi + 0x18c], ecx
mov dword [ecx], 0x10
push eax
mov ecx, esp
mov dword [ecx], 0x44aa10
push eax
mov ebx, esp
mov dword [esi + 0x1dc], ebx
mov dword [ebx], 0x21
jmp dword [esi + 0x19c]