Function at 0x52b824
Capabilities:
Encode data using base64
Parse pe header

Disassembly:
sub esp, 0x84
push ebx
push ebp
push esi
push edi
xor edi, edi
push edi
call fcn.0040cc40
add esp, 4
test eax, eax
je 0x52ba84
xor eax, eax
xor esi, esi
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], 1
mov dword [esp + 0x18], 0x5c5798
mov ebx, 0x784de8
lea ebp, [eax - 0x18]
lea ecx, [ebp + 0x17]
cmp ecx, 0x1d
ja case.0x52b728.22
lea ecx, [eax - 1]
mov dword [esp + 0x1c], ecx
xor edx, edx
mov dl, byte [ecx + 0x52c4b4]
jmp dword [edx*4 + 0x52c4ac]
cmp dword [ebx], edi
jle case.0x52b728.22
mov eax, dword [0xf53f08]
mov edx, dword [0xf53f0c]
add edx, 0x28
mov dword [0xe20778], 0
lea ecx, [esi + eax + 0x42]
mov eax, dword [0xf571fc]
push ecx
mov ecx, dword [esp + 0x18]
add eax, ecx
push edx
push eax
mov ecx, 0xf55bb0
call fcn.0053e590
mov edi, dword [ebx]
mov ecx, dword [ebx + 0x90]
sub edi, ecx
cmp ebp, 0xb
ja case.0x52b789.1
mov eax, dword [esp + 0x14]
add eax, 0xffffffe8
xor edx, edx
mov dl, byte [eax + 0x52c4dc]
jmp dword [edx*4 + 0x52c4d4]
cmp ebx, 0x784e58
je case.0x52b789.0
cmp ebx, 0x784e10
je case.0x52b789.0
cmp ebx, 0x784e78
je case.0x52b789.0
lea edi, [edi + edi*4]
lea edi, [edi + edi*4]
shl edi, 2
mov ecx, dword [esp + 0x20]
mov edx, dword [0x7056c8]
xor eax, eax
cmp edx, ecx
mov edx, dword [esp + 0x18]
push 0
sete al
push 0
push eax
push edx
push 0
call fcn.004cd1a0
mov eax, dword [0xe38da4]
mov ecx, dword [0xe38da8]
mov edx, dword [0xf56f9c]
add esp, 0x14
test edi, edi
push eax
mov eax, dword [0xf53f08]
push ecx
push 0
lea ecx, [esi + eax + 0x42]
push edx
mov edx, dword [0xf53f0c]
mov dword [0xe20778], 0
push ecx
je 0x52b820
add edx, 0x3c
push edx
push 0x57c048
push 0x40
push edi
call fcn.004d6860
add esp, 0x24
jmp 0x52b833
add edx, 0x3c
push edx
push 2
push 0xc7
call fcn.004d62f0
add esp, 0x20
cmp ebp, 0xb
ja case.0x52b847.1
mov edx, dword [esp + 0x14]
lea eax, [edx - 0x18]
xor ecx, ecx
mov cl, byte [eax + 0x52c4f0]
jmp dword [ecx*4 + 0x52c4e8]
cmp ebx, 0x784e58
je 0x52b85e
cmp ebx, 0x784e10
jne 0x52b863
cmp edi, 1
jg case.0x52b847.0
mov eax, dword [0xe38da4]
mov ecx, dword [0xe38da8]
mov edx, dword [0xf56f9c]
push eax
mov eax, dword [0xf53f08]
push ecx
push 0
push edx
mov edx, dword [0xe20778]
lea ecx, [esi + eax + 0x42]
mov eax, dword [0xf53f0c]
push ecx
lea ecx, [eax + edx + 0x3c]
mov edx, dword [esp + 0x28]
push ecx
jmp 0x52b8d0
mov eax, dword [0xe38da4]
mov ecx, dword [0xe38da8]
mov edx, dword [0xf56f9c]
push eax
mov eax, dword [0xf53f08]
push ecx
push 0
push edx
mov edx, dword [0xe20778]
lea ecx, [esi + eax + 0x42]
mov eax, dword [0xf53f0c]
push ecx
lea ecx, [eax + edx + 0x3c]
mov edx, dword [esp + 0x30]
push ecx
add edx, 0x37
push edx
push 0x17
call fcn.004d62f0
mov ecx, dword [0xeaac28]
mov eax, dword [esp + 0x34]
imul ecx, ecx, 0x1276
add ecx, eax
add esp, 0x20
cmp ebp, 0xb
mov dword [0xe20778], 0
mov edi, dword [ecx*4 + 0xea6160]
ja case.0x52b90e.1
add eax, 0xffffffe8
xor edx, edx
mov dl, byte [eax + 0x52c504]
jmp dword [edx*4 + 0x52c4fc]
cmp ebx, 0x784e58
je case.0x52b90e.0
cmp ebx, 0x784e10
je case.0x52b90e.0
cmp ebx, 0x784e78
jne 0x52b940
mov eax, 0x51eb851f
imul edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov edi, edx
mov ecx, dword [0xe38da4]
mov edx, dword [0xe38da8]
mov eax, dword [0xf56f9c]
push ecx
mov ecx, dword [0xf53f08]
push edx
push 0
push eax
mov eax, dword [0xf53f0c]
lea edx, [esi + ecx + 0x42]
add eax, 0x12c
push edx
push eax
push 0x57c048
push 0x40
push edi
call fcn.004d6860
add esp, 0x24
cmp ebp, 0xb
ja case.0x52b994.1
mov edx, dword [esp + 0x14]
lea eax, [edx - 0x18]
xor ecx, ecx
mov cl, byte [eax + 0x52c518]
jmp dword [ecx*4 + 0x52c510]
cmp edi, 1
jne 0x52b9d7
mov eax, dword [0xe38da4]
mov ecx, dword [0xe38da8]
mov edx, dword [0xf56f9c]
push eax
mov eax, dword [0xf53f08]
push ecx
push 0
push edx
mov edx, dword [0xe20778]
lea ecx, [esi + eax + 0x42]
mov eax, dword [0xf53f0c]
push ecx
lea ecx, [eax + edx + 0x12c]
push ecx
push 0x39
jmp 0x52ba46
mov edx, dword [0xe38da4]
mov eax, dword [0xe38da8]
mov ecx, dword [0xf56f9c]
push edx
mov edx, dword [0xf53f08]
push eax
push 0
push ecx
mov ecx, dword [0xe20778]
lea eax, [esi + edx + 0x42]
mov edx, dword [0xf53f0c]
push eax
lea eax, [edx + ecx + 0x12c]
push eax
push 0x3a
jmp 0x52ba46
mov ecx, dword [0xe38da4]
mov edx, dword [0xe38da8]
mov eax, dword [0xf56f9c]
push ecx
mov ecx, dword [0xf53f08]
push edx
push 0
push eax
mov eax, dword [0xe20778]
lea edx, [esi + ecx + 0x42]
mov ecx, dword [0xf53f0c]
push edx
lea edx, [ecx + eax + 0x12c]
push edx
push 1
push 0xc7
call fcn.004d62f0
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
add esp, 0x20
inc edx
add ecx, 0x1c
add esi, 0x2a
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], ecx
xor edi, edi
add ebx, 4
inc eax
cmp ebx, 0x784e78
mov dword [esp + 0x14], eax
jl 0x52b70a
mov eax, dword [0xe38da4]
mov ecx, dword [0xe38da8]
mov edx, dword [0xf53f08]
push eax
mov eax, dword [0xf53f0c]
push ecx
push 8
add edx, 0x11a
push 0x23
add eax, 0x26
mov ebx, 5
push edx
push eax
mov dword [esp + 0x38], ebx
call fcn.004d65b0
add esp, 0x18
xor eax, eax
mov dword [esp + 0x14], eax
mov ebp, 0xd
mov dx, word [eax*2 + 0x784de0]
mov dword [esp + 0x10], edi
movsx ecx, dx
shl ecx, 4
add ecx, 0x5d19c8
cmp dx, di
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
jle 0x52c492
cmp word [ecx], 1
movsx ecx, word [ecx + 2]
jne 0x52bbec
dec ecx
cmp ecx, 3
ja case.default.0x52bb04
jmp dword [ecx*4 + 0x52c524]
xor ebp, ebp
jmp 0x52bb29
mov ebp, 5
jmp 0x52bb29
mov ebp, 0xa
jmp 0x52bb29
mov ebp, 0xf
jmp 0x52bb29
mov ebp, 0x14
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
mov eax, dword [ecx + 0xea5fa0]
test eax, eax
jne 0x52bb58
lea edi, [ebp + 0xe]
add ebp, 0xf
mov esi, 0x64
mov dword [esp + 0x10], ebp
jmp 0x52c2ff
mov eax, dword [ecx + 0xea5fac]
lea edx, [esp + 0x24]
push edx
push eax
call fcn.004f1310
mov esi, dword [esp + 0x60]
add esp, 8
cmp esi, 0x64
jge 0x52bbb9
mov eax, dword [0x7056c8]
lea ecx, [ebx + 1]
cmp eax, ecx
lea edi, [ebp + 0x10]
mov dword [esp + 0x10], 0xd
jne 0x52c2ff
lea edx, [ebx*8]
push 0
sub edx, ebx
push 0
push 0xf800
lea eax, [edx*4 + 0x5c5798]
push eax
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov eax, dword [0xeaac28]
mov esi, 0x64
imul eax, eax, 0x49d8
mov ecx, dword [eax + 0xea6090]
test ecx, ecx
jne 0x52bbe4
cmp dword [eax + 0xea6098], 0xc
jl 0x52bbe4
lea edi, [ebp + 0x11]
jmp 0x52c2ff
lea edi, [ebp + 0x12]
jmp 0x52c2ff
dec ecx
cmp ecx, ebp
ja case.0x52bbf5.4
jmp dword [ecx*4 + 0x52c534]
mov ecx, dword [0xeaac28]
mov edx, ecx
imul edx, edx, 0x1276
add edx, eax
cmp dword [edx*4 + 0xea5fa0], edi
jne 0x52bc2c
mov esi, 0x64
mov edi, 0x27
mov dword [esp + 0x10], 0x28
jmp 0x52c2ff
imul ecx, ecx, 0x49d8
movsx eax, word [ecx + 0xea5baa]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 2
cdq
and edx, 0xf
add eax, edx
mov esi, eax
sar esi, 4
cmp esi, 0x64
jge 0x52bc5c
mov edi, 0x29
jmp 0x52c0e0
mov esi, 0x64
mov edi, 0x2a
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52bcd0
push eax
mov esi, 0x64
mov edi, 0x2b
mov dword [esp + 0x14], 0x2c
call fcn.004f52b0
sub eax, 0xcf
add esp, 4
neg eax
sbb eax, eax
and eax, 0x2710
add eax, 0x2710
mov dword [esp + 0x1c], eax
mov eax, dword [0xeaac28]
imul eax, eax, 0x49d8
mov ecx, dword [eax + 0xea61c8]
mov dword [esp + 0x18], ecx
jmp 0x52c2ff
mov ecx, dword [ecx + 0xea5fac]
xor eax, eax
mov edx, ecx
mov dword [esp + 0x18], edi
shl edx, 5
add edx, ecx
mov dword [esp + 0x1c], edi
mov al, byte [edx*8 + 0x799a2d]
mov esi, eax
cmp esi, 0x64
jge 0x52bd37
mov eax, dword [0x7056c8]
lea ecx, [ebx + 1]
cmp eax, ecx
mov edi, 0x2d
mov dword [esp + 0x10], ebp
jne 0x52c2ff
lea edx, [ebx*8]
push 0
sub edx, ebx
push 0
push 0xf800
lea eax, [edx*4 + 0x5c5798]
push eax
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov esi, 0x64
mov edi, 0x2e
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
mov edx, ecx
imul edx, edx, 0x1276
add edx, eax
shl edx, 2
cmp dword [edx + 0xea5fa0], edi
jne 0x52bd90
imul ecx, ecx, 0x49d8
mov esi, 0x64
mov edi, 0x2f
mov ecx, dword [ecx + 0xea61d8]
mov dword [esp + 0x10], 0x30
mov dword [esp + 0x1c], 0x55f0
mov dword [esp + 0x18], ecx
jmp 0x52c2ff
mov edx, dword [edx + 0xea5fac]
push edi
push edx
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
call fcn.00542ad0
mov esi, eax
add esp, 8
cmp esi, 0x64
jge 0x52bdb9
mov edi, 0x31
jmp 0x52c0e0
mov esi, 0x64
mov edi, 0x32
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52bdf8
mov esi, 0x64
mov edi, 0x3f
mov dword [esp + 0x10], 0x40
jmp 0x52c2ff
mov eax, dword [ecx + 0xea5fac]
push edi
push eax
mov ecx, 0x6fd368
call fcn.00417050
mov esi, eax
cmp esi, 0x64
jge 0x52be53
mov eax, dword [0x7056c8]
lea ecx, [ebx + 1]
cmp eax, ecx
mov edi, 0x41
mov dword [esp + 0x10], ebp
jne 0x52c2ff
lea edx, [ebx*8]
push 0
sub edx, ebx
push 0
push 0xf800
lea eax, [edx*4 + 0x5c5798]
push eax
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov esi, 0x64
mov edi, 0x42
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52be92
mov esi, 0x64
mov edi, 0x3b
mov dword [esp + 0x10], 0x3c
jmp 0x52c2ff
mov ecx, dword [ecx + 0xea5fac]
push edi
push ecx
mov ecx, 0x6fd5d8
call fcn.0040d940
mov esi, eax
cmp esi, 0x64
jge 0x52beed
mov eax, dword [0x7056c8]
lea edx, [ebx + 1]
cmp eax, edx
mov edi, 0x3d
mov dword [esp + 0x10], ebp
jne 0x52c2ff
lea eax, [ebx*8]
push 0
sub eax, ebx
push 0
push 0xf800
lea ecx, [eax*4 + 0x5c5798]
push ecx
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov esi, 0x64
mov edi, 0x3e
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52bf2c
mov esi, 0x64
mov edi, 0x47
mov dword [esp + 0x10], 0x48
jmp 0x52c2ff
mov edx, dword [ecx + 0xea5fac]
push edi
push edx
mov ecx, 0x6de650
call fcn.00401540
mov esi, eax
cmp esi, 0x64
jge 0x52bf4f
mov edi, 0x49
jmp 0x52c0e0
mov esi, 0x64
mov edi, 0x4a
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52bf8e
mov esi, 0x64
mov edi, 0x4b
mov dword [esp + 0x10], 0x4c
jmp 0x52c2ff
mov eax, dword [ecx + 0xea5fac]
push edi
push eax
mov ecx, 0x6f9320
call fcn.00545740
mov esi, eax
cmp esi, 0x64
jge 0x52bfe9
mov eax, dword [0x7056c8]
lea ecx, [ebx + 1]
cmp eax, ecx
mov edi, 0x4d
mov dword [esp + 0x10], ebp
jne 0x52c2ff
lea edx, [ebx*8]
push 0
sub edx, ebx
push 0
push 0xf800
lea eax, [edx*4 + 0x5c5798]
push eax
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov esi, 0x64
mov edi, 0x4e
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52c028
mov esi, 0x64
mov edi, 0x4f
mov dword [esp + 0x10], 0x50
jmp 0x52c2ff
mov ecx, dword [ecx + 0xea5fac]
push edi
push ecx
mov ecx, 0x6f5648
call fcn.00558be0
mov esi, eax
cmp esi, 0x64
jge 0x52c083
mov eax, dword [0x7056c8]
lea edx, [ebx + 1]
cmp eax, edx
mov edi, 0x51
mov dword [esp + 0x10], ebp
jne 0x52c2ff
lea eax, [ebx*8]
push 0
sub eax, ebx
push 0
push 0xf800
lea ecx, [eax*4 + 0x5c5798]
push ecx
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov esi, 0x64
mov edi, 0x52
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52c0c2
mov esi, 0x64
mov edi, 0x53
mov dword [esp + 0x10], 0x54
jmp 0x52c2ff
mov edx, dword [ecx + 0xea5fac]
push edi
push edx
mov ecx, 0x6de9e0
call fcn.00555e80
mov esi, eax
cmp esi, 0x64
jge 0x52c11e
mov edi, 0x55
mov ecx, dword [0x7056c8]
lea eax, [ebx + 1]
cmp ecx, eax
mov dword [esp + 0x10], ebp
jne 0x52c2ff
lea ecx, [ebx*8]
push 0
sub ecx, ebx
push 0
push 0xf800
lea edx, [ecx*4 + 0x5c5798]
push edx
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov esi, 0x64
mov edi, 0x56
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52c15d
mov esi, 0x64
mov edi, 0x57
mov dword [esp + 0x10], 0x58
jmp 0x52c2ff
mov eax, dword [ecx + 0xea5fac]
push edi
push eax
mov ecx, 0x6e9188
call fcn.0054f470
mov esi, eax
cmp esi, 0x64
jge 0x52c1b8
mov eax, dword [0x7056c8]
lea ecx, [ebx + 1]
cmp eax, ecx
mov edi, 0x59
mov dword [esp + 0x10], ebp
jne 0x52c2ff
lea edx, [ebx*8]
push 0
sub edx, ebx
push 0
push 0xf800
lea eax, [edx*4 + 0x5c5798]
push eax
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov esi, 0x64
mov edi, 0x5a
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
imul ecx, ecx, 0x1276
add ecx, eax
shl ecx, 2
cmp dword [ecx + 0xea5fa0], edi
jne 0x52c1f7
mov esi, 0x64
mov edi, 0x43
mov dword [esp + 0x10], 0x44
jmp 0x52c2ff
mov ecx, dword [ecx + 0xea5fac]
push edi
push ecx
mov ecx, 0x6de548
call fcn.004e6710
mov esi, eax
cmp esi, 0x64
jge 0x52c252
mov eax, dword [0x7056c8]
lea edx, [ebx + 1]
cmp eax, edx
mov edi, 0x45
mov dword [esp + 0x10], ebp
jne 0x52c2ff
lea eax, [ebx*8]
push 0
sub eax, ebx
push 0
push 0xf800
lea ecx, [eax*4 + 0x5c5798]
push ecx
push 0
call fcn.004cd1a0
add esp, 0x14
jmp 0x52c2ff
mov esi, 0x64
mov edi, 0x46
jmp 0x52c2ff
mov ecx, dword [0xeaac28]
mov edx, ecx
imul edx, edx, 0x1276
add edx, eax
shl edx, 2
cmp dword [edx + 0xea5fa0], edi
jne 0x52c2a8
imul ecx, ecx, 0x49d8
mov esi, 0x64
mov edi, 0x33
mov edx, dword [ecx + 0xea61d8]
mov dword [esp + 0x10], 0x34
mov dword [esp + 0x1c], 0x5dc0
mov dword [esp + 0x18], edx
jmp 0x52c2ff
mov eax, dword [edx + 0xea5fac]
push edi
push eax
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
call fcn.004df040
mov esi, eax
add esp, 8
cmp esi, 0x64
jge 0x52c2d2
mov edi, 0x35
mov dword [esp + 0x10], ebp
jmp 0x52c2ff
mov eax, dword [0xeaac28]
mov esi, 0x64
imul eax, eax, 0x49d8
cmp dword [eax + 0xea6090], edi
jne 0x52c2fa
mov ecx, dword [eax + 0xea6098]
mov edi, 0x36
cmp ecx, 0xc
jge 0x52c2ff
mov edi, 0x37
mov eax, dword [esp + 0x20]
mov ebx, dword [0xf56f9c]
xor ecx, ecx
lea edx, [eax*8]
mov dword [0xe20778], ecx
sub edx, eax
mov eax, dword [0xe38da4]
push eax
mov dword [0xe20774], ecx
lea ebp, [edx*4 + 0x5c5798]
mov edx, dword [0xe38da8]
push edx
push 8
push 8
push ecx
push ebx
push ebp
push edi
push 0xc7
call fcn.004d6200
add esp, 0x24
cmp esi, 0x64
jge 0x52c396
mov eax, dword [0xe20778]
push 8
add eax, 8
push eax
push 0
push ebx
push ebp
push 0x5e03fc
push 0x40
push esi
call fcn.004cd290
mov ecx, dword [0xe38da4]
mov edx, dword [0xe38da8]
mov eax, dword [0xe20778]
push ecx
push edx
add eax, 8
push 8
push eax
push 0
push ebx
push ebp
push 2
push 0xc7
call fcn.004d6200
add esp, 0x44
mov esi, dword [esp + 0x1c]
test esi, esi
je 0x52c3cf
mov eax, 0x51eb851f
mov ecx, dword [0xe20778]
imul esi
add ecx, 8
push 8
sar edx, 5
push ecx
mov eax, edx
push 0
push ebx
shr eax, 0x1f
push ebp
push 0x57c048
add edx, eax
push 0x40
push edx
call fcn.004cd290
add esp, 0x20
mov eax, dword [esp + 0x10]
mov dword [0xe20778], 0
test eax, eax
je 0x52c405
mov ecx, dword [0xe38da4]
mov edx, dword [0xe38da8]
push ecx
push edx
push 0x18
push 8
push 0
push ebx
push ebp
push eax
push 0xc7
call fcn.004d6200
add esp, 0x24
test esi, esi
je 0x52c47a
mov eax, dword [0xe20778]
mov esi, dword [esp + 0x18]
add eax, 8
push 0x18
push eax
mov eax, 0x51eb851f
imul esi
sar edx, 5
mov ecx, edx
push 0
push ebx
push ebp
shr ecx, 0x1f
push 0x57c048
add edx, ecx
push 0x40
push edx
call fcn.004cd290
mov edx, dword [0xe38da4]
mov eax, dword [0xe38da8]
mov ecx, dword [0xe20778]
add esp, 0x20
cmp esi, 0x64
push edx
push eax
push 0x18
jne 0x52c463
add ecx, 8
push ecx
push 0
push ebx
push ebp
push 0x39
jmp 0x52c46d
add ecx, 8
push ecx
push 0
push ebx
push ebp
push 0x3a
push 0xc7
call fcn.004d6200
add esp, 0x24
mov eax, dword [esp + 0x20]
mov ebp, 0xd
inc eax
xor edi, edi
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x20]
inc eax
cmp eax, 3
mov dword [esp + 0x14], eax
jl 0x52bac7
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret
shr ebx, 2
xor eax, eax
cmp edi, edx
mov dword [0xd3b4fc], eax
jle 0x53c5c1
sub edi, edx
mov edx, edi
jmp 0x53c5c9
jge 0x53c5c7
sub edx, edi
jmp 0x53c5c9
xor edx, edx
cmp eax, edx
mov dword [0xd3b4f8], edx
jge 0x53c664
add byte [eax], al
add byte [eax], al
jmp 0x53c662
salc
mov esp, 0x850f0200
xchg dword [eax], ecx
add byte [eax], al
mov eax, 1
pop edi
mov byte [esi + 0xbcd675], al
mov esp, 0xa35d5e00
invalid
fsub st(2), st(0)
add byte [ebx - 0x7d], bl
les esp, [eax]
ret
mov esp, 0xa35d5e00
invalid
add byte [eax], al
movsx eax, word [esi + 0xbcd624]
movsx ecx, word [esi + 0xbcd61c]
movsx edx, word [esi + 0xbcd626]
movsx edi, word [esi + 0xbcd61e]
cmp ecx, eax
jle 0x53c639
sub ecx, eax
mov eax, ecx
jmp 0x53c641
jge 0x53c63f
sub eax, ecx
jmp 0x53c641
xor eax, eax
cmp edi, edx
mov dword [0xd3b4fc], eax
jle 0x53c650
sub edi, edx
mov edx, edi
jmp 0x53c658
jge 0x53c656
sub edx, edi
jmp 0x53c658
xor edx, edx
cmp eax, edx
mov dword [0xd3b4f8], edx
jge 0x53c664
mov eax, edx
cmp eax, 0x19
jl case.0x53c1c6.10
mov eax, 2
pop edi
mov byte [esi + 0xbcd675], al
pop esi
pop ebp
mov dword [0xeadcdc], eax
pop ebx
add esp, 0x20
ret
mov byte [esi + 0xbcd729], 0xd
mov byte [esi + 0xbcd675], al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
mov eax, dword [0xeadcdc]
cmp eax, 0xffffffff
jne case.0x53cea4.6
xor ecx, ecx
mov cl, byte [esi + 0xbcd602]
add ecx, 0xfffffffb
cmp ecx, 0x64
ja case.0x53cea4.6
xor edx, edx
mov dl, byte [ecx + 0x53d044]
jmp dword [edx*4 + 0x53d03c]
call fcn.0053c060
cmp eax, 9
mov dword [0xeadcdc], eax
je 0x53c91b
cmp eax, 8
je 0x53c91b
mov cl, byte [esp + eax*4 + 0x10]
pop edi
mov byte [esi + 0xbcd729], cl
mov byte [esi + 0xbcd675], al
pop esi
pop ebp
pop ebx
add esp, 0x20
ret